c++ - Boost 开出来的线程怎么捕捉 Ctrl - c
PHP中文网
PHP中文网 2017-04-17 12:06:28
0
1
780

如题,我用 boost::thread 开了一个线程,线程就做循环打印吧。但是这个程序跑起来以后,按 ctrl-c,并不会立即退出,而要等挺长一段时间。

请问怎么使得这个线程能够马上响应呢?

PHP中文网
PHP中文网

认证0级讲师

全部回覆(1)
伊谢尔伦

ctrl+c會傳送一個SIGINT訊號。 boost::thread可能要完成一些資源清理工作後再退出。你也可以自己處理SIGINT。不過不推薦使用信號啊。 linux下用條件變數。在windows下MESSAGE跟EVENT都可以做這個事情。還有更好的方法是C++11裡面的條件變數(boost的執行緒函式庫已經進了11標準了)

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板