您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在中间暂停/恢复python脚本

在中间暂停/恢复python脚本

好的,从我在搜索中看到的内容(即使使用线程)sys.stdin也将对您不利,无论您如何使用它(input(),甚至sys.stdin.read()是。。readline()等),因为它们会阻塞。

而是将您的管理器程序编写为套接字服务器或类似的程序。

将脚本编写为生成器,旨在暂停执行(每次击中ayield),然后next()依次依次依次调用每个脚本。StopIteration脚本完成后,您将获得一个异常。

为了处理命令,编写第二个脚本,该脚本连接到管理器程序的套接字并发送消息,这将是用户与之交互的控制台界面(以后,您甚至可以将其升级为GUI,而无需在其他地方进行任何改动)。

服务器在脚本上运行下一个迭代之前会选择这些命令,并且如果用户暂停了脚本,则管理器程序只是不会调用next()该脚本,直到用户告诉它再次运行为止。

我尚未对此进行测试,但是我 认为 它比为外部脚本制作线程或子进程然后尝试暂停(然后终止)它们更好。

这确实超出了我的理解范围,但是也许可以在后台运行脚本并使用kill -stopkill -cont暂停并继续运行(假设Linux)?

python 2022/1/1 18:39:45 有345人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶