pthread_join函数

来源:互联网 发布:什么是软件测试员 编辑:程序博客网 时间:2024/04/25 21:12

哈喽。本人刚开始自学linux,学习过程中接触到linux多线程编程。一直以来,对多线程的概念比较含糊,通过网络阅读了许多博文后,有了更清晰的理解。下面整理下来,方便你我。


一、Linux 下的多线程编程

      为何要使用多线程?

     1)和进程相比,线程是一种更“节俭”的多任务操作方式。因为启动一个进程(电脑上运行了每一个应用程序就是一个进程),就要为它分配独立的地址空间,空间中包括代码段、数据段和堆栈段。而运行在一个进程中的多个线程,由于使用相同的地址空间,共享大部分的数据,启动它花费的空间远远小于进程;另外,线程间切换所需的时间也比进程间切换时间短。

     2)通信机制方便

     详细请见:http://www.cnblogs.com/chenyadong/archive/2011/10/25/2223610.html

     "进程——资源分配的最小单位,线程——程序执行的最小单位"


二、pthread_join函数的作用

       pthread_join:使一个线程等待另一个线程结束。

     

      代码中如果没有pthread_join,主线程会很快结束从而使整个进程结束,从而使创建的线程没有机会开始执行就结束了。加入pthread_join后,主线程会一直等待,直到等待的线程结束自己才结束,使创建的线程有机会执行。

     详细请见:转载自http://blog.csdn.net/jxxfqyy/article/details/4084193

0 0