多线程中slepp()和wait()到底有何不同?在多线程中怎么用?都一样吗?
注意:1. sleep() 是一个静态方法,可以直接 Thread.sleep() 不用创建Thread 对象。
2. sleep() 会抛 throws InterruptedException
3. sleep() 中必须面指定参数。Thread.sleep( long millis); 而wait() 可以不指定参数,会有一个默认值wait(0)
4. sleep() 不会释放CPU执行资格,而wait( long timeout )会释放CPU执行资格 直到被人notify(); 或notifyAll()唤醒,才会重新获得CPU的执行资格。 |