可以在进程中创建线程
每个进程都有自己的数据段,代码段,和堆栈段
为了减少系统开销,从进程中演化出了线程。
每一个进程有一个地址空间,和一个控制线程
线程和进程都可以并发执行。
使用多线程的目的:
多任务程序的设计
开发多进程开销大,共享数据不方便,这时可以使用多线程
并发程序设计;网络程序设计;数据共享;在多CPU系统中,实现真正的并行。
线程也有线程号,线程号只在它所属的进程环境中有效。
进程号用pid_t数据类型,线程号用pthread_t数据类型。
与fork不同的是pthread_create创建线程不与父线程在同一点开始运行,而是从指定函数开始运行。
线程依赖进程存在,如果创建线程的进程结束了,线程也就结束了。
线程从执行函数中返回
