簡體   English   中英

如何獲得有關python進程關閉/突然終止的警報?

[英]How to get alert for shutdown of python process/abrupt termination?

我們如何在python進程內連接代碼,以便在進程關閉/突然終止的情況下發送警報?

目前尚不清楚您的確切意思。 是否關閉/中止流程本身? 還是子進程?

  • 進程本身的關閉/中止:看一下Python的atexit模塊 在這里,您可以為程序干凈退出時注冊一個回調。 但是絕對沒有辦法讓您抓住所有情況,如果您的程序由於嚴重問題而失敗(例如segfault),則永遠不會調用atexit處理程序。 您需要一個監督過程來捕獲所有異常終止。
  • 子進程的關閉/中止:如果您使用子進程模塊,則可以簡單地在popen對象上調用poll()或wait()來查看生成的進程是否已死/等待它們死亡。 對於更高級的實現,請使用Pythons信號模塊為SIGCHLD設置處理程序-每當子進程之一終止時,此信號就會發送到您的進程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM