单选题如果要安全地终止一个线程t,可以采用的正确方法是(  )。A调用t.stop()方法B可以使用标志flag,通过设置flag通知线程t结束C调用t.suspend()方法D调用t.yield()方法

单选题
如果要安全地终止一个线程t,可以采用的正确方法是(  )。
A

调用t.stop()方法

B

可以使用标志flag,通过设置flag通知线程t结束

C

调用t.suspend()方法

D

调用t.yield()方法


参考解析

解析:
中断线程比较安全的做法是引入共享变量,所以使用标志flag,通过设置flag通知线程t结束是最好的办法。stop()方法是强制当前线程停止运行,并抛出ThreadDead错误。suspend()方法是临时挂起当前线程。yield()方法是使当前执行线程暂时停止执行而让其他线程运行。Thread.stop,Thread.suspend,Thread.resume和Runtime.runFinalizers()nExit这些终止线程运行的方法已经被废弃,使用它们是极端不安全的。

相关考题:

下列叙述正确的是( )。A.线程的执行从run()方法开始,需要调用start()方法运行线程B.可以通过实现Runnable接口,并且重写start()方法创建线程C.可以通过继承Thread类,并且重写start()方法创建进程D.线程执行从start()方法开始,需要通过调用run()方法运行线程

resume( )方法恢复哪些线程的执行?A.通过调用stop( )方法而停止的线程B.通过调用sleep( )方法而停止运行的线程C.通过调用wait( )方法而停止运行的线程D.通过调用suspend( )方法而停止运行的线程

下列说法正确的是()。A.线程的终止一般可通过两种方法来实现,自然撤销(线程执行完)或是被停止(调用stop()方法)B.一个暂时终止运行的线程(例如,睡眠或阻塞)在排除了终止原因后直接运行C.一个线程因为输入输出操作被阻塞时,执行resume()方法可以使其恢复就绪状态D.调用了suspend()方法,也可以使线程进入死亡状态

resume()力法恢复哪些线程的执行A.通过调用stop()方法而停止的线程B.通过调用sleep()方法而停止运行的线程C.通过调用wait()方法而停止运行的线程D.通过调用suspend()方法而停止运行的线程

如果一个线程调用【 】 ()方法,将使该线程进入休眠状态。

方法resume()负责恢复哪些线程的执行( )。A.通过调用stop()方法而停止的线程B.通过调用sleep()方法而停止运行的线程C.通过调用wait()方法而停止运行的线程D.通过调用suspend()方法而停止运行的线程

如果线程正处于阻塞状态,不能够使线程直接进入可运行状态的情况是A.sleep()方法的时间到B.获得了对象的锁C.线程在调用t.join()方法后,线程t结束D.wait()方法结束

resume方法恢复( )的执行。A.通过调用stop方法而停止的线程B.通过调用sleep方法而停止运行的线程C.通过调用wait方法而停止运行的线程D.通过调用suspend方法而停止运行的线程

下列说法正确的是______。A.即使高优先级的线程调用slee()方法睡眠时,低优先级的线程也没有办法获得处理器资源B.一个暂时终止运行的线程,在排除了终止原因后直接运行C.一个正在执行的线程使用yield()方法将处理器让出给同优先级的其他线程D.调用suspend()方法暂停自己的线程,也可以自行调用resume()方法恢复自身

在以下哪种情况下,线程进入就绪状态? A.线程调用了sleep()方法时B.线程调用了join()方法C.线程调用了yield()方法时D.线程调用了notify()方法

下列说法中错误的一项是______。A.通过执行Thread.currentThrea《)返回当前线程的引用B.currentThread()方法是静态方法C.stop()方法强行终止线程的执行,线程结束后,仍然可以再运行D.线程a通过a.suspend()方法暂停执行,通过调用a.resume()恢复执行

( 32 )如果线程正处于阻塞状态,不能够使线程直接进入可运行状态的情况是A ) sleep() 方法的时间到B )获得了对象的锁C )线程在调用 t.join() 方法后,线程 t 结束D ) wait() 方法结束

在以下哪种情况下,线程进入就绪状态?()A、线程调用了sleep()方法时B、线程调用了join()方法(终止)C、线程调用了yield()方法时D、线程调用了notify()方法

多线程中,可以通过调用相应的()方法来修改一个线程的相对优先级。

要将某个线程设置为后台线程,需要调用该线程的()方法,该方法必须在()方法之前调用

对于wait()方法,下面说法正确的是?()A、wait()方法的调用者是同步锁对象B、wait()方法使线程进入等待状态C、调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程D、调用wait()方法的线程会释放同步锁对象

下面关于Java中线程的说法不正确的是()A、调用join()方法可能抛出异常InterruptedException。B、sleep()方法是Thread类的静态方法。C、调用Thread类的sleep()方法可终止一个线程对象。D、线程启动后执行的代码放在其run方法中。

启动多线程必须调用start()方法, 如果调用run()方法则没有启动新的线程

一个线程可以调用yield方法使其他线程有机会运行。

守护线程一般被用于在后台为其它线程提供服务。调用方法()来判断一个线程是否是守护线程,也可以调用方法()将一个线程设为守护线程。

单选题在以下()情况下,线程就进入可运行状态A 线程调用了sleep()方法时B 线程调用了join()方法时C 线程调用了yield()方法时D 以上都是

填空题守护线程一般被用于在后台为其它线程提供服务。调用方法()来判断一个线程是否是守护线程,也可以调用方法()将一个线程设为守护线程。

单选题下面关于Java中线程的说法不正确的是()A调用join()方法可能抛出异常InterruptedException。Bsleep()方法是Thread类的静态方法。C调用Thread类的sleep()方法可终止一个线程对象。D线程启动后执行的代码放在其run方法中。

填空题要将某个线程设置为后台线程,需要调用该线程的()方法,该方法必须在()方法之前调用

多选题对于wait()方法,下面说法正确的是?()Await()方法的调用者是同步锁对象Bwait()方法使线程进入等待状态C调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程D调用wait()方法的线程会释放同步锁对象

单选题在以下哪种情况下,线程进入就绪状态?()A线程调用了sleep()方法时B线程调用了join()方法(终止)C线程调用了yield()方法时D线程调用了notify()方法

单选题如果线程正处于阻塞状态,不能够使线程直接进入可运行状态的情况是(  )。Asleep()方法的时间到B获得了对象的锁C线程在调用t.join()方法后,线程t结束Dwait()方法结束