boost asio程式優雅的退出 一

2021-09-11 06:45:24 字數 1221 閱讀 6035

分享一下我老師大神的人工智慧教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!

當程式能夠攔截kill程序的訊號,然後清理資源再退出程序時,就是優雅的退出。boost的asio提供了這個機制。下面用最少的**演示了這個功能:

#include

#include

#include

#include

using

namespace boost;using

namespace boost::asio;using

namespace

std;io_service s;void

handle_stop

()int

main

(int argc, char** ar**)

先定義了全域性變數io_service s, 然後基於這個構造乙個訊號量集合signals.

再新增攔截的訊號,然後進入註冊非同步等待函式handle_stop。

該函式負責關閉io_service。

最後呼叫io_service::run函式進入等待。run函式直到stop被呼叫才會退出。

分享一下我老師大神的人工智慧教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!

當程式能夠攔截kill程序的訊號,然後清理資源再退出程序時,就是優雅的退出。boost的asio提供了這個機制。下面用最少的**演示了這個功能:

#include

#include

#include

#include

using

namespace boost;using

namespace boost::asio;using

namespace

std;io_service s;void

handle_stop

()int

main

(int argc, char** ar**)

先定義了全域性變數io_service s, 然後基於這個構造乙個訊號量集合signals.

再新增攔截的訊號,然後進入註冊非同步等待函式handle_stop。

該函式負責關閉io_service。

最後呼叫io_service::run函式進入等待。run函式直到stop被呼叫才會退出。

程式的優雅

將程式盡量寫的優雅,我相信是每個程式設計師的追求。但是什麼才是優雅的程式?這就是仁者見仁了。舉個例子 public class test public static test getinstance return mtest private mapfuna private void funb pub...

程式使用TDiocpTcpClient退出時報錯

exe 帶包 vcl rtl 呼叫 dll 帶包vcl rtl testbpl,其中testbpl中使用tdiocptcpclient exe不能正常退出的問題,可以通過在exe動態載入 testbpl解決 原以為是testbpl有問題,後面通過 exe帶上 testbpl編譯,也能正常退出,如果中...

ios程式閃退

問題裡的 秒退 如果我沒理解錯,應該是指程式顯示完預設啟動後,在初始化階段就崩潰了 也可以叫 閃退 不過最近 閃退 這個詞已經被廣泛應用於各種程式崩潰情況了,所以可能還是 秒退 更準確?這種情況應和所謂的記憶體不足關係不大,很少有程式會在初始化時載入大量內容導致崩潰,並且這類問題也很容易在開發階段被...