pthread_join()函数理解
生活随笔
收集整理的這篇文章主要介紹了
pthread_join()函数理解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?
pthread_t tid;
使用方式:pthread_join(tid,NULL);
?
為什么要使用pthread_join()?
在很多情況下,主線程生成并起動了子線程,如果子線程里要進行大量的耗時的運算,主線程往往將于子線程之前結束,
但是如果主線程處理完其他的事務后,需要用到子線程的處理結果,也就是主線程需要等待子線程執(zhí)行完成之后再結束,這個時候就要用到pthread_join()方法了。
即pthread_join()的作用可以這樣理解:主線程等待子線程的終止。也就是在子線程調用了pthread_join()方法后面的代碼,只有等到子線程結束了才能執(zhí)行。
?
代碼實驗
可以通過代碼來看看執(zhí)行的效果,就知道了:
[cpp]?view plain?copy
加了pthread_join()方法的打印:
?
如果把里面的pthread_join()方法注釋掉的打印:
?
可以看得出來,如果沒有加pthread_join()方法,main線程里面直接就執(zhí)行起走了,加了之后是等待線程執(zhí)行了之后才執(zhí)行的后面的代碼
?
join()就是主線程等待子線程執(zhí)行完畢之后,再回收其占用的資源,之后再接著向下執(zhí)行。
?
?
總結
以上是生活随笔為你收集整理的pthread_join()函数理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何用计算机放出音乐,如何录制电脑内部播
- 下一篇: 优麒麟系统安装MySQL_优麒麟系统安装