-1
您好,我目前正在努力實現在C++中自動註銷了一定的時間在用戶空閒後用戶的計時器。我想要做的是,當用戶輸入命令NotIdleException從main被調用並且運行睡眠15分鐘功能的線程從計時器的開始處重新啓動時C++跨線程異常投擲
定時器的代碼位於這裏 http://pastebin.com/tw1YGcmu
我遇到的問題是我想從主線程調用這個異常,並讓它由定時器線程中的try catch處理。有什麼辦法可以在C++(跨平臺!)中做到這一點?
'升壓:: asio'已有[定時器](http://www.boost.org/doc/libs/1_54_0/doc/html/boost_asio/overview/timers.html); '的boost :: thread's可以睡覺時被打斷(['線程:: interrupt'(http://www.boost.org/doc/libs/1_54_0/doc/html/thread/thread_management.html#thread。 thread_management.thread.interrupt)),它在被中斷的線程中拋出一個異常。 – dyp
包含在問題相關的代碼,同時努力保持合理的規模。問題或答案中的鏈接是好的,只要問題/答案可以自己站立*沒有鏈接。 – dandan78
你想使用異常來傳遞線程之間的(非例外)消息嗎?請不要這可能是最糟糕的實現方式。 – user2802841