繁体   English   中英

当需要用户输入/确认时如何暂停其他进程子进程 Python

[英]How do I pause other processes when user input / confirmation is required Subprocess Python

如果我有一个脚本(进程 run.py)将运行 3 个子进程 A.py、B.py、C.py(通过进程 run.py 同时调用 3 个脚本)。

p= subprocess.Popen(['python3', '-u', 'A.py'])
p2 = subprocess.Popen(['python3', '-u', 'B.py'])
p3 = subprocess.Popen(['python3', '-u', 'C.py'])

操作很好。 但是在 b.py 中说我有一条线,例如

reply = input( do you want to continue this action y/n :)
if reply.lower == 'yes':
take this action()
elif reply.lower == 'no' :
take other action()

(pref)如何让 A.py 和 c.py 的子进程等待/暂停 5 秒,以便用户输入 y 或 no 或等待用户输入 y 或 no

终端中的基本确认提示。 但是我面临的问题是 A.py B.py 运行不允许确认将启动不同的任务/进程/脚本。

这里的指导将受到热烈欢迎。

您必须使用外部系统让进程在它们之间进行通信。

外部系统可以像在文件中写入一些代码并让所有进程检查文件的 state 一样简单。

更复杂的解决方案是拥有一个消息代理( RabbitMQKafka ...)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM