0
Q
運行與超時
A
回答
0
您的程序可能會忽略SIGTERM,這是gtimeout
用於「請求程序終止」的信號。
你可以有gtimeout
使用SIGKILL代替,無法通過添加參數-s 9
這樣被忽略或阻塞,:
gtimeout -s 9 python myprogram.py
相關問題
- 1. Oracle運行選擇與超時選項
- 2. 長時間運行的查詢超時
- 3. Spring 3.0 - @Transactional運行時更改超時
- 4. 運行pintos時的測試超時
- 5. 是否線程繼續運行時的Future.get(超時)超時
- 6. LdapConnection超時與SearchRequest超時
- 7. ExecutorService.awaitTermination(超時,單位)即使在超時後仍繼續運行
- 8. 查詢運行時間超過命令超時SSIS
- 9. 宏運行時錯誤'9':下標超出範圍與宏
- 10. 運行時錯誤1004與VBA添加超鏈接
- 11. Oracle客戶端運行超時
- 12. 角,運行區間功能,超時
- 13. 從Django運行Selenium的超時錯誤
- 14. 在PHP超時運行PHP函數
- 15. 從PowerShell運行程序超時
- 16. 運行在超時循環功能
- 17. 取消功能,有$超時運行
- 18. 運行60分鐘後JUnit超時
- 19. 在運行時更改BIRT超鏈接
- 20. 與運行時執行命令(時)EXEC
- 21. feedparser與超時
- 22. 與超時
- 23. 與超時
- 24. 與超時
- 25. 超時與Ajaxterm
- 26. 與超時
- 27. 與Subversion同時運行Mercurial
- 28. 從命令行運行時http連接超時
- 29. 長時間運行文件操作和執行超時
- 30. 運行功能超出最大AWS Lambda超時
也許你的Python腳本沒有響應正確SIGTERM?嘗試添加「-s 9」,例如'gtimeout -s 9 600 python myprogram.py',來發送SIGKILL。 – CherryDT
你能詳細說一下嗎?我可能會接受你的答案。 – zell
我不確定這是否適合您的情況,您必須嘗試。現在這是一個猜測,我認爲這是不夠的實際答案。但問題在於有兩種方式來終止進程:基本上要求進程終止的信號「SIGTERM」(它可能會拒絕這樣做),以及不能被阻止的「SIGKILL」並將強制該進程被操作系統終止。 'gtimeout'通常發送SIGTERM(就像'kill'一樣)。你可以使用'-s'來指定一個不同的信號,比如'9'(與'KILL'相同的信號名稱),就像你用'kill -9'所做的那樣。 – CherryDT