更多“线程类的获取当前线程对象引用的方法是(),获取当前线程名字的方法”相关问题
  • 第1题:

    怎样创建线程()

    A.通过Thread类的构造方法创建线程

    B.Thread类提供了start()方法创建线程

    C.通过实现Runnable接口创建线程

    D.通过使用Thread类提供的interrupt()方法创建线程


    参考答案:AC

  • 第2题:

    使线程放弃当前分得的CPU时间,但不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得CPU时间的方法是( )。

    A.sleep()方法

    B.suspend()方法

    C.yield()方法

    D.wait()方法


    正确答案:C
    解析:本题考查对线程阻塞概念的理解程度。为了解决对共享存储区的访问冲突,Java引入了同步机制。但当多个线程对共享资源访问时,显然同步机制已经不够了,因为在任意时刻所要求的资源不一定已经准备好了被访问,反过来,同一时刻准备好了的资源也可能不止1个。为了解决这种情况下的访问控制问题,Java引入了对阻塞机制的支持。阻塞指的是暂停一个线程的执行以等待某个条件发生(如某资源就绪),学过操作系统的同学对它一定已经很熟悉了。Java提供了大量方法来支持阻塞,下面逐一分析。选项A错误,slccp()允许指定以毫秒为单位的一段时间作为参数,它使得线程在指定的时间内进入阻塞状态,不能得到CPU时间,指定的时间一过,线程重新进入可执行状态。典型地,slecp()被用在等待某个资源就绪的情形:测试发现条件不满足后,让线程阻塞一段时间后重新测试,直到条件满足为止。选项B错误,suspend()和resume()两个方法常配套使用,suspcnd()使得线程进入阻塞状态,并且不会自动恢复,必须其对应的resume()被调用,才能使得线程重新进入可执行状态。典型地,suspend()和resume()被用在等待另一个线程产生的结果的情形:测试发现结果还没有产生后,让线程阻塞,另一个线程产生了结果后,调用resume()使其恢复。选项C正确,yield()使得线程放弃当前分得的CPU时间,但是不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得CPU时间。调用yield()的效果等价于调度程序认为该线程已执行了足够的时间从而转到另一个线程。选项D错误,wait()和notify()两个方法常配套使用,wait()使得线程进入阻塞状态,它有两种形式,一种允许指定以毫秒为单位的一段时间作为参数,另一种没有参数,前者当对应的notify()被调用或者超出指定。

  • 第3题:

    下列关于Thread类中方法的叙述正确的是( )。

    A.方法activeCount()的功能是获取当前活动的线程数

    B.方法enumerate()的功能是拷贝当前活动线程信息

    C.方法getName()获取线程的名称,而方法getThreadGroup()可以获取当前线程所属线程组的名称

    D.方法toString()的功能是转化输入的数据类型,以字符串形式输出


    正确答案:C
    解析:方法activeCount()的功能是获取当前线程所属线程组中的活动线程数;方法 enumerate()的功能是拷贝当前线程所属线程组中的活动线程信息;方法getName()获取线程的名称,而方法getThreadGroup()可以获取当前线程所属线程组的名称;方法toString()的功能是以字符串形式获取线程的名称、优先级和线程组等信息。

  • 第4题:

    Thread类的方法中用于修改线程名字的方法是( )。A.setName( )B.reviseName( )SXB

    Thread类的方法中用于修改线程名字的方法是( )。

    A.setName( )

    B.reviseName( )

    C.getName( )

    D.checkAecess( )


    正确答案:A
    Thread类的其他方法有setName()、get-Name()、activeCount()和setDaemon()等。其中,用于修改线程名字的方法是setName()。

  • 第5题:

    下列说法中错误的一项是______。

    A.通过执行Thread.currentThrea《)返回当前线程的引用

    B.currentThread()方法是静态方法

    C.stop()方法强行终止线程的执行,线程结束后,仍然可以再运行

    D.线程a通过a.suspend()方法暂停执行,通过调用a.resume()恢复执行


    正确答案:C

  • 第6题:

    对于线程的生命周期,下面四种说法正确的有哪些?()

    • A、调用了线程的start()方法,该线程就进入运行状态 (就绪,还要获得CPU使用权)
    • B、线程的run()方法运行结束或被未catch的InterruptedException等异常终结,那么该线程进入死亡状态 
    • C、线程进入死亡状态,但是该线程对象仍然是一个Thread对象,在没有被垃圾回收器回收之前仍可以像引用其它对象一样引用它
    • D、线程进入死亡状态后,调用它的start()方法仍然可以重新启动

    正确答案:B,C

  • 第7题:

    基于Runnable实现线程时,Thread类的构造方法中必须指明()

    • A、线程组名
    • B、目标对象
    • C、线程名
    • D、线程组名和线程名

    正确答案:B

  • 第8题:

    下面四个选项中,哪些是线程进入阻塞状态的原因?()

    • A、线程试图获取某个对象的同步锁,而该锁被其它线程持有
    • B、线程调用了另一个线程的join()方法
    • C、当线程调用了一个阻塞式的IO方法
    • D、线程调用了setDaemon(boolean b)方法

    正确答案:A,B,C

  • 第9题:

    多选题
    下面四个选项中,哪些是线程进入阻塞状态的原因?()
    A

    线程试图获取某个对象的同步锁,而该锁被其它线程持有

    B

    线程调用了另一个线程的join()方法

    C

    当线程调用了一个阻塞式的IO方法

    D

    线程调用了setDaemon(boolean b)方法


    正确答案: A,B
    解析: 暂无解析

  • 第10题:

    填空题
    线程对象的()方法用来阻塞当前线程,指定线程运行结束或超时后继续运行当前线程。

    正确答案: join()
    解析: 暂无解析

  • 第11题:

    填空题
    线程类的获取当前线程对象引用的方法是(),获取当前线程名字的方法是()。

    正确答案: currentThread(),getName()
    解析: 暂无解析

  • 第12题:

    单选题
    下列关于线程调度的叙述中,错误的是()。
    A

    调用线程的sleep()方法,可以使比当前线程优先级低的线程获得运行机会

    B

    调用线程的yeild()方法,只会使与当前线程相同优先级的线程获得运行机会

    C

    当有比当前线程的优先级高的线程出现时,高优先级线程将抢占CPU并运行

    D

    具有相同优先级的多个线程的调度一定是分时的


    正确答案: C
    解析: 暂无解析

  • 第13题:

    Thread类的方法中,toString( )方法的作用是( )。

    A.只返回线程的名称

    B.返回当前线程所属的线程组的名称

    C.返回当前线程对象

    D.返回线程的字符串信息


    正确答案:D

  • 第14题:

    下列______情况一定不会使当前的线程暂停执行。

    A.该线程调用sleep()方法

    B.该线程抛出一个IntermptedException

    C.该线程创建一个新的子线程

    D.该线程从输入流读取文件数据


    正确答案:C
    解析:当新线程被创建时,只是使它变为可运行状态而已,并不能使当前线程停止执行。当从输入流读取文件数据时,它与输入输出打交道,可能造成线程的暂停执行。

  • 第15题:

    线程的______方法只给具有与当前线程相同优先级的线程运行的机会。


    正确答案:yield()
    yield()

  • 第16题:

    用实现Runnable接口的方法创建线程时要()

    A. 直接创建线程对象

    B. 实现start方法

    C. 通过run方法,启动线程对象

    D. 先创建线程的目标对象,在通过目标对象创建线程对象


    正确答案:D

  • 第17题:

    Thread类的方法中,toString()方法的作用是()

    • A、只返回线程的名称
    • B、返回当前线程所属的线程组的名称
    • C、返回当前线程对象
    • D、返回线程的名称

    正确答案:D

  • 第18题:

    Thread类提供了一系列基本线程控制方法,如果我们需要让与当前进程具有相同优先级的线程也有运行的机会则可以调用()方法。


    正确答案:yield()

  • 第19题:

    线程控制方法中,yield()的作用是()

    • A、返回当前线程的引用
    • B、使比其低的优先级线程执行
    • C、强行终止线程
    • D、只让给同优先级线程运行

    正确答案:D

  • 第20题:

    下列关于线程调度的叙述中,错误的是()。

    • A、调用线程的sleep()方法,可以使比当前线程优先级低的线程获得运行机会
    • B、调用线程的yeild()方法,只会使与当前线程相同优先级的线程获得运行机会
    • C、具有相同优先级的多个线程的调度一定是分时的
    • D、分时调度模型是让所有线程轮流获得CPU使用权

    正确答案:B,C

  • 第21题:

    填空题
    CPU调度当前线程时,其它线程被(),当前线程处于()状态。

    正确答案: 挂机,运行
    解析: 暂无解析

  • 第22题:

    多选题
    对于线程的生命周期,下面四种说法正确的有哪些?()
    A

    调用了线程的start()方法,该线程就进入运行状态 (就绪,还要获得CPU使用权)

    B

    线程的run()方法运行结束或被未catch的InterruptedException等异常终结,那么该线程进入死亡状态

    C

    线程进入死亡状态,但是该线程对象仍然是一个Thread对象,在没有被垃圾回收器回收之前仍可以像引用其它对象一样引用它

    D

    线程进入死亡状态后,调用它的start()方法仍然可以重新启动


    正确答案: C,A
    解析: 暂无解析

  • 第23题:

    单选题
    基于Runnable实现线程时,Thread类的构造方法中必须指明()
    A

    线程组名

    B

    目标对象

    C

    线程名

    D

    线程组名和线程名


    正确答案: C
    解析: 暂无解析