我有一个Python脚本,它可以自动检查互联网连接,如果互联网出现故障,它应该重新启动wifi连接。在
这是执行此操作的函数:
def RestartWifi():
print 'Restarting Wifi.'
os.system('sudo ifdown --force wlan0')
time.sleep(6)
os.system('sudo ifup wlan0')
我添加了sleep命令,以确保在重新启用连接之前有足够的时间禁用。在
然而,有没有一种方法可以加快这一速度,并在wifi被禁用后立即启用它?另外,如果第一个命令花费的时间超过6秒,会发生什么? 有没有一种方法可以像函数一样等待命令在完成后“返回”?在
非常感谢你的帮助!在
为了回答我自己的问题,I found out操作系统()用进程返回代码响应。这表明函数只在被调用的子进程完成后返回。在
因此,我试图解决的问题,似乎根本不是问题,我应该能够消除睡眠时间。在
然而,有一个(非常)短的延迟是有意义的,就像一个预防措施和“让事情解决”,可以这么说。在大多数情况下,这一秒无论如何都不是问题。在
您可以这样做的一种方法是在syscall完成之前阻塞它。这样你就不必再等了。一种方法确保调用块与
命令。在
相关问题 更多 >
编程相关推荐