TLPI-Chapter 29线程:介绍
一个进程可以包含多个线程,多个线程共享同一份全局内存区域,包括初始化数据段(initialized data)、未初始化数据段(uninitialized data)以及堆内存段(heap segment).
对于某些应用而言,线程要优于进程:
1.进程间信息难以共享,必须使用进程间通信IPC方式,在进程间进行消息通信。
2.使用fork创建进程带价较高。
线程解决了上面两个问题:
1.线程之间能够方便、快速共享信息,需要使用线程同步技术(互斥锁 条件变量)
2.创建线程比创建进程快(实现线程是通过clone()系统调用)