zoukankan
html css js c++ java
线程与进程的区别
线程是指进程内的一个执行单元,也是进程内的可调度实体.
与进程的区别:
(1)
地址空间
:进程内的一个执行单元;进程至少有一个线程;它们共享进程的
地址空间
;而进程有自己独立的
地址空间
;
(2)资源拥有:进程是
资源分配
和拥有的单位,同一个进程内的线程共享进程的资源
(3)线程是处理器调度的
基本单位
,但进程不是.
4)二者均可并发执行.
进程和线程都是由
操作系统
所体会的程序运行的
基本单元
,系统利用该
基本单元
实现系统对应用的
并发性
。进程和线程的区别在于:
简而言之,一个程序至少有一个进程,一个进程至少有一个线程.
线程的划分尺度小于进程,使得
多线程
程序的
并发性
高。
另外,进程在执行过程中拥有独立的
内存单元
,而多个线程
共享内存
,从而极大地提高了程序的运行效率。
线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、
顺序执行
序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程
执行控制
。
从逻辑角度来看,
多线程
的意义在于一个应用程序中,有多个执行部分可以同时执行。但
操作系统
并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及
资源分配
。这就是进程和线程的重要区别。
进程是具有一定独立功能的程序关于某个
数据集
合上的一次运行活动,进程是系统进行
资源分配
和调度的一个独立单位.
线程是进程的一个实体,是CPU调度和分派的
基本单位
,它是比进程更小的能独立运行的
基本单位
.线程自己基本上不拥有
系统资源
,只拥有一点在运行中必不可少的资源(如
程序计数器
,一组
寄存器
和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.
一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行.
查看全文
相关阅读:
细细审视的你代码:异步消息处理
[C++] 加速make的编译
分析一下12306网站
[Linux] 通过shell给unix socket发送数据
shell中如何设置自增的变量
多系统的 启动 顺序 修改
对apk包进行odex优化的目的
Android之所以不需要关闭后台运行程序 的 理由
shell中如何设置自增的变量
eclipse 小结
原文地址:https://www.cnblogs.com/jamesbd/p/3591666.html
最新文章
Jquery json的超强组合
父窗口与子窗口的数据传递问题
在ModalDialog中操作父窗口对象
多核环境下的内存屏障指令
sed用法点滴
电信系统架构方案
awk用法点滴
Linux下共享库(SO)有关的几个环境变量
SHELL参数介绍
LinuxThreads和NPTL
热门文章
“云”到底是什么?云计算7种类型细分
linux/fs/proc.txt
WGet使用指南
MAC删除顽固启动项
[C++] tcmalloc的尴尬
[C++] gdb高级调试方法
细细审视的你代码:一点编程理解
[C++] 关于gdb断点的真相
redis再观察
[C++] 内存保护
Copyright © 2011-2022 走看看