- 7
- 0
- 约8.09千字
- 约 13页
- 2016-11-30 发布于重庆
- 举报
11_linux線程专题讲座王保明
linux线程-应用编程-专题讲座 written by 王保明线程概念1线程概念什么是线程 在一个程序里的一个执行路线就叫做线程(thread)。更准确的定义是:线程是“一个进程内部的控制序列”一切进程至少都有一个执行线程 进程与线程 进程是资源竞争的基本单位线程是程序执行的最小单位线程共享进程数据,但也拥有自己的一部分数据线程ID程序计数器寄存器组栈errno一个进程内部的线程可以共享资源代码段数据段打开文件和信号fork和创建新线程的区别 当一个进程执行一个fork调用的时候,会创建出进程的一个新拷贝,新进程将拥有它自己的变量和它自己的PID。这个新进程的运行时间是独立的,它在执行时几乎完全独立于创建它的进程在进程里面创建一个新线程的时候,新的执行线程会拥有自己的堆栈(因此也就有自己的局部变量),但要与它的创建者共享全局变量、文件描述符、信号处理器和当前的工作目录状态线程的优点创建一个新线程的代价要比创建一个新进程小得多与进程之间的切换相比,线程之间的切换需要操作系统做的工作要少很多线程占用的资源要比进程少很多能充分利用多处理器的可并行数量在等待慢速I/O操作结束的同时,程序可执行其他的计算任务计算密集型应用,为了能在多处理器系统上运行,将计算分解到多个线程中实现I/O密集型应用,为了提高性能,将I/O操作重叠。线程可以同时等待不同的I/O操作。线程缺点性能损失一个很少被外部
原创力文档

文档评论(0)