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

Python-如何优雅地处理SIGTERM信号?

Python-如何优雅地处理SIGTERM信号?

基于类的干净使用解决方案:

import signal
import time

class GracefulKiller:
  kill_Now = False
  def __init__(self):
    signal.signal(signal.SIGINT, self.exit_gracefully)
    signal.signal(signal.SIGTERM, self.exit_gracefully)

  def exit_gracefully(self,signum, frame):
    self.kill_Now = True

if __name__ == '__main__':
  killer = GracefulKiller()
  while not killer.kill_Now:
    time.sleep(1)
    print("doing something in a loop ...")

  print "End of the program. I was killed gracefully :)"
python 2022/1/1 18:24:51 有550人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

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

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

请先登录

推荐问题


联系我
置顶