是否有可能在C++中編寫try,catch語句和定時器的方式,如果函數不能被執行(它被卡住)程序只是繼續?嘗試x秒,然後離開?
1
A
回答
3
是的,你可以這樣做,例如,Boost.Thread。
特別注意timed_join功能。
0
最可靠的方法是在子進程中執行工作,等待子進程超時,然後將其終止。
0
KISS:
clock_t start = clock();
const int max_try_clocks = 5 * CLOCKS_PER_SEC; // 5 is the number of seconds
// we should keep trying for
try_again:
try {
// whatever you need to try
} catch (...) {
if (clock() - start < max_try_clocks)
goto try_again;
}
相關問題
- 1. 安卓:時間毫秒到X日 - X小時 - X分 - X秒內離開
- 2. 停止代碼X秒,然後繼續
- 3. IIS 7在20秒後離開連接
- 4. Selenium - 在10秒後離開webdriver點擊
- 5. 延遲x秒後開始滾動(smoothdivscroll)
- 6. 如何在x秒後開始觀察
- 7. 打開文件;先嚐試文件系統,然後JAR
- 8. JavaScript WebSocket嘗試打開...然後關閉,沒有錯誤
- 9. Node-amqp - X嘗試後拒絕消息
- 10. X嘗試失敗後阻止登錄
- 11. Flash CS5:addChild然後離開幀
- 12. 下載文件,然後離開頁面
- 13. 對齊文本中心,然後離開
- 14. JavaScript調用函數然後在連續x秒後調用它
- 15. 導航到一個網頁,然後在X秒後重定向
- 16. 互聯網連接 - 我如何嘗試連接5秒,然後放棄?
- 17. Arduino打開領先2秒,然後關閉並等待3秒,然後重新開始
- 18. Vala:如何異步等待x秒,然後執行一些操作然後
- 19. Visual Studio 2010將嘗試從遠程調試器分離後開始構建
- 20. 加載聲音文件暫停,然後開始數秒後打
- 21. 顯示x秒後鏈接
- 22. mediaRecorder錄製最後X秒
- 23. PhantomJSDriver在X秒後截圖?
- 24. X秒後的下一步
- 25. X秒後重定向AngularJS
- 26. x秒後更新標記
- 27. x秒後啓動無效
- 28. javascript:window.close();後幾秒鐘X量
- 29. CakePHP x秒後重定向?
- 30. X秒後觸發事件
你可能不得不揭開序幕一個單獨的線程做的工作和監控線程。 – Rup
你能提供最少的代碼示例嗎?由於'try/catch',我無法獲知程序如何卡住? – iammilind
如果你真的想要「陷入困境」而不是「花費漫長而確定的時間」,那麼你最好把它縮小到可以阻止和替換非阻塞版本的程序部分。 –