码迷,mamicode.com
首页 > 编程语言 > 详细

多线程,理论部分

时间:2020-02-07 20:50:52      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:有一个   子进程   控制   默认   之间   自己的   进程间通信   地址   它的   

一。什么是线程?

在传统操作系统中,每个进程都有一个地址空间,而且默认就有一个控制线程。

进程只是把资源集中到一起(进程只是一个资源单位/资源集合),而线程才是cpu上的执行单位。

多线程:在一个进程中存在多个控制线程,多个控制线程共享进程的地址空间。

 

二。线程的创建开销小

创建线程的开销要远小于创建进程的开销,

"进程之间是竞争关系,线程之间是协作关系"

 

三。线程与进程的区别

1。线程共享创建它的进程的地址空间;进程有自己的地址空间

2。线程可以直接访问其进程的数据段;进程有自己的父进程数据段的副班

3。线程可以直接与进程中的其他线程通信;进程必须使用进程间通信来与同级进程通信

4。新线程很容易创建;新进程需要父进程的复制

5。线程可以对同一进程的线程进行相当大的控制;进程只能对子进程进行控制

6。主线程得更改(取消,优先级更改等)可能会影响进程中其他线程的行为;对父进程的修改不会影响子进程

 

四。为何使用多线程

 

 

五。多线程的应用举例

六。经典的线程模型

七。POSIX线程

八。在用户空间实现的线程

九。在内核空间实现的线程

十。用户级与内核级线程的对比

十一。混合实现

十二。线程小故事

多线程,理论部分

标签:有一个   子进程   控制   默认   之间   自己的   进程间通信   地址   它的   

原文地址:https://www.cnblogs.com/yizhixiaowenzi/p/12274291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!