wait()、notify()和notifyAll()这三个方法的调用者都应该是同步锁对象
对
举一反三
- 对于wait()方法,下面说法正确的是?() A: wait()方法的调用者是同步锁对象 B: wait()方法使线程进入等待状态 C: 调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程 D: 调用wait()方法的线程会释放同步锁对象
- 【单选题】使当前线程放弃同步锁并进入等待,直到其他线程进入此同步锁,并调用notify()或notifyAll()方法唤醒该线程为止的是什么方法声明() A. void notify() B. void notifyAll() C. void wait() D. 无
- 在Java中,调用一个对象的wait()方法后,()。 A: 如果该对象的notify()方法已经被调用,则不会产生任何效果 B: 在另外一个对象调用它的notify()或 notifyAll()方法之前该对象一直被挂起 C: 将抛出一个异常 D: 该对象的wait()方法与其他对象自动同步
- wait、notify、notifyAll是在Object类中定义的方法。
- 在什么方法中wait( )方法、notify( )及 notifyAll( )方法可以被使用?
内容
- 0
下面哪些方法可以在任何时候被任何线程调用? A: sleep() B: yield() C: synchronized(this) D: notify() E: wait() F: notifyAll()
- 1
调用阻塞等待方法wait(),调用错误的是( )。 A: 在同步方法中调用 B: 在同步语句中调用 C: 在已取得对象锁的地方调用 D: 在未取得对象锁的地方调用
- 2
在线程通信中,调用wait( )可以使当前线程处于等待状态,而为了唤醒一个等待的线程,需要调用的方法是( )。 A: 只能通过notify()方法唤醒 B: 通过join()方法唤醒 C: 需要通过notifyAll()方法唤醒 D: 通过notify()或notifyAll()方法唤醒
- 3
Java中线程中经常使用到sleep和wait它们的区别不包括() A: 这两个方法来自不同的类,sleep是来自Thread,wait是来自Object; B: sleep线程安全性比wait要好 C: sleep方法没有释放锁,而wait方法释放了锁。 D: wait,notify,notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用。
- 4
java中下面哪些是Object类的方法()。 A: notify() B: notifyAll() C: sleep D: wait()