【C/C++多线程编程之二】pthread简介

多线程编程pthread简介

      Pthread POSIX threads 的简称,是POSIX线程标准POSIX可移植操作系统接口

(Portable Operating System Interface)的简称,其定义了操作系统的标准接口,旨在获得源代码级别的软件可移植性。Pthread是学习多线程的绝佳线程库,其API命名方式同一般C/C++代码相同,易于编程与理解。

         1.线程库选择的疑惑

         Pthread只是C/C++支持的多线程库中的一个,其他还有openMP,Boost,甚至WIN API等众多库。学习多线程编程,不必纠结于选哪个库,如同学习C/C++时不要纠结于使用哪个编译器,专注于学习多线程的原理才是王道。

         2. 线程与进程

         进程是一个具有独立功能程序的运行实体,如上节的示例程序,运行时便产生一个进程;通常一个进程包含一个或多个线程。

普通C程序多是只含有一个线程的进程,上节的示例程序包含线程1与线程2,故示例程序是多线程的进程。

         线程与进程都是操作系统的概念。不同进程之间相互独立,同一进程的线程共享该进程的地址空间及其他资源

         线程与进程关系如下图:

 

       

 

  

3.多线程的优势

  •  提高应用程序的响应速度:相比单线程程序,多线程程序不必等待其他线程完成就可以开始另一个线程。
  •  有效使用多处理器,提高CPU利用率:多线程程序能很好的使用多处理器,提高运行速度。
  •  节省系统资源: 处理同步任务时,使用两个线程比使用两个进程节省大量的系统资源。

 

来自 <https://blog.csdn.net/lovecodeless/article/details/23673965>

 

猜你喜欢

转载自blog.csdn.net/zcc1229936385/article/details/81230980