线程和进程

1. 直观认知

打开win10的任务管理器,点击“进程”,可以看到很多正在运行的进程:



没错,操作系统会为运行的程序创建相应的进程,进程就是操作系统中运行的一个个可执行程序。

而线程,是比进程更小的、可独立运行的子任务,一个线程里可以创建多个进程,比如在使用QQ时,我们可以一边听着音乐、一边下载文件、一边和朋友聊天等等,这些就是分别由音乐线程、文件下载线程和数据传输线程支持的。 
虽然在感觉上,会认为这些事情是同时进行的,其实不然,CPU会为每个线程分配时间片,这些任务是在不断切换执行的,但是由于时间片非常短,所以会有同时进行的错觉。因此引入多线程的好处不言而喻,即:可以最大限度的提高CPU的利用率。


2. 区别和联系

进程:是计算机中的程序关于某数据集合上的一次运行活动,是程序的实体,系统进行资源分配和调度的基本单位。 
线程:是比进程更小的、可独立运行的执行单元,可以看作是轻量级进程,被系统独立调度和分派CPU的基本单位


线程与进程的区别和联系其实是相辅相成的:


1. 一个线程只能属于一个进程,但是一个进程可以拥有多个线程且至少拥有一个。

2. 进程是系统进行资源分配和调度的基本单位,线程是被系统独立调度和分派CPU的基本单位。

3. 进程可以申请和拥有系统资源,它不仅仅是静态的代码,更是一次程序动态的运行活动,而线程本身不用有系统资源(除了运行中那点儿必不可少的资源以外),它和同属同一进程的其他线程一起共享相应进程所拥有的全部资源。




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值