BOOST 线程完全攻略 - 结束语
生活随笔
收集整理的這篇文章主要介紹了
BOOST 线程完全攻略 - 结束语
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
全文介紹了3個boost::thread的擴展類,希望能給大家書寫多線程代碼帶來便捷。 thread?->?controlled_module_ex?->controlled_module 那么我們具體在什么情況下選用不同的擴展類呢? 1.如果你只想創建一個生命期比較短的子線程,做一件獨立事務,例如統計什么的,那么不需要用到擴展類 void?threadCount() { int?num?=?0;for(int?i=0;i<1000000;i++) {num+=i; } cout?<<?num?<<?endl; } int?_tmain(int?argc,?_TCHAR*?argv[]) {boost::thread?thd(threadCount);thd.join(); } 2.如果你想開一個子線程,生命期很長,例如后臺監控網絡數據包,但是主線程要能有效的終止這個子線程,那么就要用到 controlled_module class?mymonitor { public:virtual?bool?work() {monitor?all?socket?packetsreturn?true; } } int?_tmain(int?argc,?_TCHAR*?argv[]) {mymonitor?m;m.start();//........m.stop();return?0; } 3.如果子線程不光生命周期長,而且與主線程經常有消息通訊,或數據傳遞等等,那么就要用到controlled_module_ex,例如TCP監聽服務子線程,controlled_module_ex是最常用到的一個類,至于完整的范例,例如如何實現tcpserver,有時間我會把代碼也貼出來。 4.如果子線程是一個有串行事務邏輯的,例如第一步登錄銀行系統,第二部破解系統密碼,第三部拿錢?開個玩笑:),那么就要用到thread類了轉載于:https://my.oschina.net/lcxidian/blog/381654
總結
以上是生活随笔為你收集整理的BOOST 线程完全攻略 - 结束语的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿拉伯数字转成大写
- 下一篇: python3 UnicodeEncod