在一段 Python 代码中异步启动另一个 Python 脚本,应该怎么做?

2018-07-30 15:23:42 +08:00
 chuanqirenwu
需求是这样的,我有一个 python 脚本,这个脚本包含一段无限循环执行的代码。现在我使用 django 开发控制脚本执行的功能,即前端发送一个请求给服务器,django 接收到这个请求就停止那个无限循环的脚本,修改那个脚本的配置参数后再重启这段脚本,恢复其运行状态。

现在的问题就是不知道该如何停止脚本以及重启脚本,网上搜了一些解决方案似乎没有奏效。希望有经验的前辈能够指点指点,小弟在此先谢过啦。
2775 次点击
所在节点    Python
5 条回复
kimqcn
2018-07-30 15:37:10 +08:00
启:
ps1=Process(target=my_func)

停:
os.kill(ps1.pid, signal.SIGKILL)
Arnie97
2018-07-31 01:58:23 +08:00
Werkzeug ( Flask )有代码改变时重启自身的功能,你不妨阅读一下源码。
vimiix
2018-08-01 12:37:08 +08:00
Celery 了解一下
RicardoScofileld
2018-08-01 13:26:53 +08:00
celery
bwangel
2018-08-06 09:00:19 +08:00
celery 执行的是定时任务,况且 celery 执行后也没法控制啊,只能等着结束。

请问你说的 django 开发控制脚本的意思是写了个脚本执行了 django.setup 函数吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/475365

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX