我有一个脚本作为
while True:
doStuff()
如果我需要停止它但又不想在操作过程中终止它,那么与此脚本通信的最佳方式是什么?
最佳答案
我假设你的意思是从 python 脚本外部进行杀戮。
我发现最简单的方法是
@atexit.register
def cleanup()
sys.unlink("myfile.%d" % os.getpid() )
f = open("myfile.%d" % os.getpid(), "w" )
f.write("Nothing")
f.close()
while os.path.exists("myfile.%d" % os.getpid() ):
doSomething()
然后要终止脚本,只需删除 myfile.xxx,应用程序就会为您退出。如果您只需要关闭一个脚本,您甚至可以同时运行同一脚本的多个实例。它会尝试自行清理....
关于python - 优雅地退出 Python 中的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2105509/