校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > java语言 > 多线程的创建和执行
题目

关于wait()和sleep()说法正确的是(多选)()

A.wait()和sleep()都会释放锁

B.sleep()可以在任何地方使用

C.wait()只能在方法或者语句块中使用

D.wait()和sleep()都是Thread类的方法

解答

正确答案:B、C

sleep()方法(休眠)是线程类(Thread)的静态方法,调用此方法让当前线程暂停执行指定的时间,将执行机会(CPU)让给其他线程,但是对象的锁依然保持,因此休眠时间结束后会自动恢复(线程回到就绪状态)

wait()是Object类的方法,调用对象的wait()方法导致当前线程放弃对象的锁(线程暂停执行),进入对象的等待池(wait pool),只有调用对象的notify()方法(或notifyAll()方法)时才能唤醒等待池中的线程进入等锁池(lockpool),如果线程重新获得对象的锁就可以进入就绪状态

C 0条回复 评论

帖子还没人回复快来抢沙发