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

进程和线程的区别

时间:2019-04-05 12:08:10      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:轻量   全局   时间   包含   变量   直接   资源分配   互斥   的区别   

进程是资源分配的独立单元,而线程是CPU调度的基本单位;

同一个进程中可以包括多个线程,并且线程共享整个进程的资源(寄存器、堆栈、上下文),一个进程至少包括一个线程。

线程没有自己的地址空间,线程包含在进程的地址空间中。一个线程死掉会导致整个进程死掉,而进程之间是独立的,一个进程死掉不会影响其他进程。进程中的线程共享进程的内存和资源,他们共享代码段、数据段、堆,但是线程间拥有自己的栈。

线程是轻量级的进程,它的创建和销毁所需要的时间比进程小很多。

进程间相互独立,通信困难,常用的IPC:管道,信号,套接字,共享内存,消息队列等;线程间可以直接读写进程数据段(如全局变量)来进行通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。

进程和线程的区别

标签:轻量   全局   时间   包含   变量   直接   资源分配   互斥   的区别   

原文地址:https://www.cnblogs.com/codeLZC/p/10658192.html

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