多线程,理论部分
Posted yizhixiaowenzi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程,理论部分相关的知识,希望对你有一定的参考价值。
一。什么是线程?
在传统操作系统中,每个进程都有一个地址空间,而且默认就有一个控制线程。
进程只是把资源集中到一起(进程只是一个资源单位/资源集合),而线程才是cpu上的执行单位。
多线程:在一个进程中存在多个控制线程,多个控制线程共享进程的地址空间。
二。线程的创建开销小
创建线程的开销要远小于创建进程的开销,
"进程之间是竞争关系,线程之间是协作关系"
三。线程与进程的区别
1。线程共享创建它的进程的地址空间;进程有自己的地址空间
2。线程可以直接访问其进程的数据段;进程有自己的父进程数据段的副班
3。线程可以直接与进程中的其他线程通信;进程必须使用进程间通信来与同级进程通信
4。新线程很容易创建;新进程需要父进程的复制
5。线程可以对同一进程的线程进行相当大的控制;进程只能对子进程进行控制
6。主线程得更改(取消,优先级更改等)可能会影响进程中其他线程的行为;对父进程的修改不会影响子进程
四。为何使用多线程
五。多线程的应用举例
六。经典的线程模型
七。POSIX线程
八。在用户空间实现的线程
九。在内核空间实现的线程
十。用户级与内核级线程的对比
十一。混合实现
十二。线程小故事
以上是关于多线程,理论部分的主要内容,如果未能解决你的问题,请参考以下文章