下列情况中,不会使线程返回所持有的对象锁的是( )。
A: 当synchronized() 语句块执行完毕
B: 当调用了线程的suspend() 方法
C: 当synchronized() 语句块中出现异常
D: 当持有锁的线程调用wait() 方法
A: 当synchronized() 语句块执行完毕
B: 当调用了线程的suspend() 方法
C: 当synchronized() 语句块中出现异常
D: 当持有锁的线程调用wait() 方法
B
举一反三
- 下列情况中,不会使线程返回所持有的对象锁的是( )[br][/br](1.0) A: 当synchronized()语句块执行完毕 B: 当调用了线程的suspend()方法 C: 当在synchronized()语句块中出现异常(exception) D: 当持有锁的线程调用该对象的wait()方法
- 线程同步中,对象的锁在()情况下持有线程返回 A: 当synchronized()语句块执行完后 B: 当在synchronized()语句块执行中出现例外(exception)时 C: 当持有锁的线程调用该对象的wait()方法时 D: 以上都是
- 在以下哪种情况下,对象不会解锁( ) A: synchronized段语句块执行完毕 B: synchronized语句块中出现exception C: 持锁线程调用对象wait () 方法 D: synchronized语句块中调用suspend () 方法
- 下列说法中错误的一项是______。 A: 当线程需要在synchronized块中等待共享数据状态改变时,则需要调用wait()方法 B: 当线程需要在synchronized块中等待共享数据状态改变时,则需要调用notify()方法 C: wait()和notify()可以实现线程的同步操作 D: 线程在synchronized块中执行完操作后,调用notify()方法通知正在等待的线程重新占有锁
- 当wait()方法被调用时,当前线程会释放所持有的锁资源,但是一个线程获得了锁,即使调用sleep()方法进入休眠,也不会释放锁。
内容
- 0
17、( )能实现线程同步。 A: Synchronized关键字修饰方法或代码块 B: 调用wait方法协调线程 C: 调用notify方法协议线程 D: 调用sleep()方法让线程休眠
- 1
21、( )是实现线程同步的方式。 A: 调用wait()方法协调线程 B: 调用notify()方法协调线程 C: Synchronized关键字修饰的方法或代码块 D: 调用join()方法协调线程
- 2
下列关于Synchronized说法正确的是 A: Synchronized加锁,锁的是一个对象 B: Synchronized加锁访问一个对象后,其它线程一定无法访问该对象 C: Synchronized加锁后,争用同一个锁的线程同时间只能有一个线程可以运行 D: 一个线程最多只能持有一个锁对象的互斥锁标记
- 3
下列情况中,不会使线程返回所持有的对象锁的是(
- 4
面四个选项中,哪些是线程进入阻塞状态的原因? A: 线程试图获取某个对象的同步锁,而该锁被其它线程持有 B: 线程调用了另一个线程的join()方法 C: 当线程调用了一个阻塞式的IO方法 D: 线程调用了setDaemon(booleanb)方法