A、线程试图获取某个对象的同步锁,而该锁被其它线程持有 B、线程调用了另一个线程的join()方法 C、当线程调用了一个阻塞式的IO方法 D、线程调用了setDaemon(boolean b)方法
A、线程试图获取某个对象的同步锁,而该锁被其它线程持有 B、线程调用了另一个线程的join()方法 C、当线程调用了一个阻塞式的IO方法 D、线程调用了setDaemon(boolean b)方法
A、 一旦一个线程被创建,它就立即开始运行 B、 使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行 C、 当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面 D、 一个线程可能因为不同的原因停止并进入可运行状态
A、调用了线程的start()方法,该线程就进入运行状态 (就绪,还要获得CPU使用权) B、线程的run()方法运行结束或被未catch的InterruptedException等异常终结,那么该线程进入死亡状态 C、线程进入死亡状态,但是该线程对象仍然是一个Thread对象,在没有被垃圾回收器回收之前仍可以像引用其它对象一样引用它 D、线程进入死亡状态后,调用它的start()方法仍然可以重新启动
A、两个线程,一个线程等待网络消息,另一个线程处理用户动作 B、一个线程即可 C、三个线程,一个线程作为服务器端,第二个线程作为客户端,第三个线程响应用户动作 D、四个线程,一个线程作为服务器端,第二个线程作为客户端,第三个线程作为数据传输,第四各线程响应用户动作