您的位置:首页 > 其它

进程与线程区别

2016-03-30 20:57 260 查看
区别:

进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。

1.调度。线程是独立调度的基本单元,进程是资源拥有的基本单位。

2.拥有资源。进程是拥有资源的基本单位,线程不拥有资源,但线程可以访问其隶属进程的系统资源。进程内的线程共享进程的栈空间,但在栈空间内,每一线程都有其独立的栈区.线程还有自己独立的寄存器等资源。

3.并发。都可并发执行。

4.系统开销。进程创建、撤销,系统为其分配或回收资源,进程切换时,系统需要保存进程的cpu环境,而线程切换时值需保存和设置少量寄存器内容,开销很小。线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。 

5、线程执行开销小,但不利于资源管理和保护。而进程正相反。

5.地址空间和其它资源。进程的地址空间之间相互独立,同一进程的各线程间共享进程的资源,其进程内的线程对于其他进程不可见。

6.通讯。进程间通讯(IPC)需要进程同步和互斥手段的辅助;而线程间可以之间读、写进程数据段(如全局变量)来进程通讯。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  进程 线程