0
A
回答
0
SIGKILL
cannot be handled,無論如何,你的程序只是終止(猛烈地殺死),你無能爲力。
您可以對SIGKILL
做的唯一一件事是在您的程序下次啓動期間查找需要清理的數據。
對於其他情況,使用atexit
來處理Python的解釋器正常終止。如果你有一些未處理的異常,看到在那裏他們可以try/except
塊發生和包裝這些代碼片斷:
try:
pass
except ValueError as e:
pass
except:
# catch other exceptions
pass
爲了應對sys.exit
電話,您可以在try/except
包裹整個節目的出發點阻止和捕獲SystemExit
的例外:
try:
# your program goes here
# you're calling your functions from here, etc
except SystemExit:
# do cleanup
raise
+1
這也是我的理解 - 這就是爲什麼我說*我明白某些情況下無法處理*,給出'SIGKILL'的例子。我正試圖涵蓋問題中提到的其他案件。 – WoJ
相關問題
- 1. 如何在檢測到碰撞後處理碰撞
- 2. HashTables如何處理碰撞?
- 3. hibernate如何處理碰撞?
- 4. 級碰撞。處理
- 5. 無物理碰撞
- 6. Swiftkit碰撞處理
- 7. Django slugified網址 - 如何處理碰撞?
- 8. 碰撞和團結碰撞
- 9. 如何在碰撞中找到碰撞事故的崩潰?
- 10. 如何檢測碰撞,但不會在box2d中碰撞?
- 11. XNA碰撞時的處理得分
- 12. 如何在gameRject與lineRender相撞時檢測碰撞?
- 13. 球對球碰撞 - 在碰撞時獲得顯着的速度
- 14. 在碰撞
- 15. andengine管理多個碰撞
- 16. 並行處理碰撞對
- 17. 散列表碰撞處理
- 18. 矩形物理和碰撞
- 19. 處理碰撞實體
- 20. 球和磚碰撞處理
- 21. Threejs和處理碰撞
- 22. 物理體碰撞檢測
- 23. 處理:與小徑碰撞
- 24. Box2D物理碰撞情景
- 25. 碰撞後處理交易
- 26. Phaser - 街機碰撞物理
- 27. 處理級聯碰撞?
- 28. 如何暫時停止碰撞檢查
- 29. 如何改變發生碰撞時
- 30. cocos2d v3沒有物理碰撞的碰撞檢測?
正如ForceBru所述,最簡單的清理方法是檢查程序啓動時是否需要清理。這樣做的最簡單方法是在成功終止程序時刪除磁盤上的文件。如果啓動時存在文件,則需要清理。 –