线程和进程的区别
- 进程和线程的区别
- 线程的优点
进程和线程的区别
1. 进程是系统进行资源分配和调度的一个独立单位,线程是程序执行的最小单位.
2. 进程有自己的内存地址空间,线程只独享指令流执行的必要资源,如寄存器和栈.
3. 由于同一进程的各线程共享内存和文件资源,可以不通过内核直接进行通信.
4. 线程的创建,切换及终止效率更高.
线程的优点
1. 创建一个新线程比创建一个新进程小得多
2. 与进程之间的切换相比,线程之间的切换工作需要操作系统做的事情要少很多
3. 线程占用的资源比进程少很多
4. 能充分利用多处理器的可并行数量
5. 在等待慢速I/O操作结束的同时,程序可执行其它的计算任务.
6. 计算密集型应用,为了能在多处理器系统上运行,将计算分解到多个线程中实现.
7. I/O型密集型应用,为了提高性能,将I/O操作重叠,线程可以同时等待不同的I/O操作.