python - 如果使用 python 卡住,请尝试干净重启和超时
问题描述
我想使用 python 重新启动远程 linux(Redhat) 机器,但有时远程 pc 在重新启动过程中卡住了。如果重启时间太长,我是否可以超时?即如果需要超过 100 秒,应该中止重新启动?
import os
restart = raw_input("Do you wish to restart your computer ? (yes / no): ")
if restart == 'no':
exit()
else:
os.system("reboot", timeout(100))...something
解决方案
不要使用os.system
,subprocess.run()
而是使用:
try:
proc = subprocess.run(["reboot"], timeout=10)
except TimeoutExpired:
...
推荐阅读
- c - C 如何在进程之间共享信息?
- amazon-web-services - 在两个网站中使用存储桶 url 是否有任何限制?
- angular - 有没有办法等待在另一个 Observable 中调用的 Observable 的结果?
- css - 自定义清单列宽不起作用
- java - DynamoDB 等待表变为活动状态
- python - 修复散景放大和缩小的边界
- c++ - 在其命名空间之外定义的类成员函数
- mysql - 在 SQL 中编写和执行子查询
- java - 记录存在时出现 EntityNotFoundException
- elastic-stack - Filebeat:将日志从一个 Filebeat 实例发送到不同的 Logstash 实例