什么是线程?它产生的背景是什么?线程有几种状态?说明状态变化调用的方法。
发布日期:2021-08-03
试题解析
线程
线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。在Unix System V及SunOS中也被称为轻量进程(lightweight processes),但轻量进程更多指内核线程(kernel thread),而把用户线程(user thread)称为线程。线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度。同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈(call stack),自己
- 中文名
-
线程
- 别名
-
执行绪;轻量进程
- 应用学科
-
计算机
- 定义
-
程序执行流的最小单元
- 外文名
-
thread
- 提出者
-
dozer
- 多线程中
-
CPU的基本单位
生的
生的,汉语词语,拼音是shēng de,意思是厘米。
- 中文名
-
生的
- 注音
-
ㄕㄥ ㄉㄜ
- 拼音
-
shēng de
- 释义
-
“生的米突”之省;即厘米
几种
几种是一个汉语词语,读音是jǐ zhǒng,指相似项目的不同或区别。
- 中文名
-
几种
- 解释
-
指相似项目的不同或区别
- 拼音
-
jǐ zhǒng
正确答案:
线程是一个进程在执行过程中产生的多条执行线索。每个线程有它产生、存在和消亡的过程,是动态的。线程由线程内核对象和线程堆栈两部分组成,相对于组成进程的内核对象及虚拟地址空间,线程使用的系统资源比进程少得多。
它产生的背景是:操作系统按照一定的策略(优先级、循环等)调度各个进程执行,以最大限度地利用计算机的各种资源。一个进程运行期间,拥有的主要资源包括地址空间(存放text,data,stack)、打开文件表、资源控制信息、核心栈。除了text可被其他进程共享外,上述资源都属进程私有。因此CPU从运行一个进程转换到运行另一个进程时,为进程保存、恢复的开销很大,并发效率低。如果把进程所占私有资源与进程中的运行代码相分离,在一个地址空间中便可运行多个代码段,由此产生线程概念。 线程的状态有以下四种:
(1)创建状态(New-Thread);
(2)运行状态(Runnable);
(3)不可运行状态(Not-Runnable);
(4)死亡状态(Dead)。
对于上面4种状态,各有特定的使线程返回可运行状态的方法与之对应,如下所述:
(1)如果线程处于睡眠状态中,sleep()方法中的参数为休息时间,当这个时间过去后,线程即为可运行的;
(2)如果一个线程被挂起,需调用resume()方法才能返回;
(3)如果线程在等待条件变量,那么要停止等待的话,需要该条件变量的线程对象调用notifyAll()方法;
(4)如果在I/O流中发生线程阻塞,则特定的I/O完成可结束这种不可运行状态。 需要注意的是每种方法仅仅对相应的情况才有作用,例如当一个线程睡眠并且睡眠时间还没有结束时,调用resume()方法是无效的。
解析:
暂无解析
题王网让考试变得更简单
扫码关注题王,更多免费功能准备上线!