gpt4 book ai didi

python - python程序运行完成后如何自动重新运行?主管?

转载 作者:行者123 更新时间:2023-12-01 04:43:41 25 4
gpt4 key购买 nike

我有一个 python 程序,我想不断运行更新并收集新数据。本质上,我正在从许多领域收集数据。我的处理器大约需要一天半的时间才能运行。一旦他们完成,我希望他们自动重新开始。

我不想使用 while 循环来重新启动进程而不首先杀死所有相关的内容,因为我用来支持这些处理器的一些软件包(主要是 pyV8)有问题内存慢慢积累,我不是一个足够好的程序员,无法深入调试这样的大包中的内存泄漏。所以,我需要所有相关进程成功死亡然后复活。

我听说 supervisord 可以完成此类工作,但不喜欢乱搞 .conf 文件,并且更愿意将所有内容保留在 python 中。

摘要:是否有一个包可以使用脚本/包杀死所有相关进程,我可以用它来放入 while 循环或在 python 脚本内创建这种行为?

最佳答案

我不明白为什么你不能使用supervisord。配置非常简单且非常灵活,并且不限于Python程序。

例如,您可以创建文件/etc/supervisor/conf.d/myprog.conf:

[program:myprog]
command=/opt/myprog/bin/myprog --opt1 --opt2
directory=/opt/myprog
user=myuser

然后重新加载主管的配置:

$ sudo supervisorctl reload

它已经打开了。是不是很简单?

有关 supervisord 配置的更多信息:http://supervisord.org/subprocess.html

关于python - python程序运行完成后如何自动重新运行?主管?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29974139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com