一个线程在任何时刻都处于某种线程状态(threadstate),例如运行状态、阻塞状态、就绪状态等。一个线程可以由选项中

题目
单选题
一个线程在任何时刻都处于某种线程状态(threadstate),例如运行状态、阻塞状态、就绪状态等。一个线程可以由选项中的哪种线程状态直接到达运行状态?()
A

死亡状态

B

阻塞状态(对象lock池内)

C

阻塞状态(对象wait池内)

D

就绪状态

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

如果线程正处于运行状态,可使该线程进入阻塞状态的方法是

A.yield()

B.start()

C.wait()

D.notify()


正确答案:C
解析:本题考查线程的生命周期。线程的生命周期主要分为以下几个状态:新建状态、可运行状态、运行状态、阻塞状态和终止状态。各周期之间的转换关系及控制方法如下图所示:

从图上可知,题目的四个选项中,只有选项C的方法可以使线程进入阻塞状态。

第2题:

如果线程正处于阻塞状态,不能够使线程直接进入可运行状态的情况是( )。 A.sleep方法的时间到S

如果线程正处于阻塞状态,不能够使线程直接进入可运行状态的情况是( )。

A.sleep方法的时间到

B.获得了对象的锁

C.线程在调用t.join方法后,线程t结束

D.wait方法结束


正确答案:D
D。【解析】wait会使线程放弃对象锁,进入等待此对象的等待锁定池。

第3题:

( 19 )如果线程正处于运行状态,则它可能到达的下一个状态是

A )只有终止状态

B )只有阻塞状态和终止状态

C )可运行状态,阻塞状态,终止状态

D )其他所有状态


正确答案:C

第4题:

一个进程可由两个线程组成,若其中一个线程被调度程序选中后进入运行态,占用处理机资源,其他的线程位于就绪队列,则此时该进程的状态是( )

A. 运行状态
B. 就绪状态
C. 挂起状态
D. 阻塞状态

答案:A
解析:
运行中的进程可以具有以下三种基本状态。1)就绪状态(Ready):进程已获得除处理器外的所需资源,等待分配处理器资源;只要分配了处理器进程就可执行。2)运行状态(Running):进程占用处理器资源;处于此状态的进程的数目小于等于处理器的数目。3)阻塞状态(Blocked):由于进程等待某种条件(如I/O操作或进程同步),在条件满足之前无法继续执行。题目中该进程已经有线程投入运行,即该进程占用了CPU资源。故选择A选项。

第5题:

线程调用sleep()方法后,该线程将进入以下哪种状态?

A.就绪状态

B.运行状态

C.阻塞状态

D.死亡状态


答案:C

第6题:

下列关于线程状态和生命周期的说法不正确的是

A.一个线程组内不仅可以包含线程,还可以包含其他线程组

B.线程在终止状态可以调用start()方法使它可运行

C.在Java中,最顶层的线程组是main

D.线程执行过程中,有一个更高优先级的线程进入可运行状态,这个线程立即被调度执行,当前线程占有的CPU被抢占


正确答案:B
解析:终止状态是线程执行结束的状态,没有方法可以改变它。

第7题:

线程在生命周期中要经历五种状态,在不使用stop()方法的情况下,线程当前处于终止状态,则它的上一个状态是( )。

A.新建状态

B.阻塞状态

C.可运行状态

D.运行状态


正确答案:D
解析:线程的生命周期过程为:(1)线程被创建后,并不马上启动,而是进入新建状态。此时线程没有分配资源,只能使用start()和stop()两个控制方法;(2)新建状态的线程在调用start()方法后,进入可运行状态。此时线程已经分配了必要资源,交给了系统调度。一旦线程实际占有了CPU,就进入了运行状态。(3)运行状态的线程如果调用了yield()方法、sleep()方法、join()方法或wait()方法,或者申请对象锁未果、有更高优先级线程进入调度等,都可进入阻塞状态。阻塞状态的线程在获取到足够的资源后,也可以转入到可运行状态。(4)当运行状态的线程正常执行完毕后,就进入了终止状态。

第8题:

下面关于线程状态及转换的描述,正确的是()。

A、线程从阻塞状态只能进入就绪状态,而不能直接进入运行状态

B、当线程对象调用了start()方法后,该线程就进入运行状态

C、一旦进入死亡状态,线程将不再拥有运行的资格,也不能再转换到其他状态

D、线程只能从新建状态转换到就绪状态,反之则不能


参考答案:ABC

第9题:

某个进程由多个线程组成,其中一个线程被调度程序选中投入运行,其他的线程有的位于就绪队列,有的被阻塞,则此时该进程的状态是

A.运行状态

B.就绪状态

C.挂起状态

D.阻塞状态


正确答案:A

第10题:

线程调用sleep()方法后,该线程将进入以下哪种状态?

  • A、就绪状态
  • B、运行状态
  • C、阻塞状态
  • D、死亡状态

正确答案:C