1.所属类不同sleep()属于Thread而wait()属于Object
2.sleep()没有释放当前锁,wait()则释放了当前锁
3.sleep(0)的目的是使当前线程释放cpu,其他线程可以竞争当前的cpu
4.wait()中timeout默认为0,当有object.wait(0)时需要有其他线程执行notify()或者notifyAll()来唤醒当前线程,线程进入就绪状态。
5.object.wait(1000)时线程挂起1000ms后线程进入就绪状态。
1.所属类不同sleep()属于Thread而wait()属于Object
2.sleep()没有释放当前锁,wait()则释放了当前锁
3.sleep(0)的目的是使当前线程释放cpu,其他线程可以竞争当前的cpu
4.wait()中timeout默认为0,当有object.wait(0)时需要有其他线程执行notify()或者notifyAll()来唤醒当前线程,线程进入就绪状态。
5.object.wait(1000)时线程挂起1000ms后线程进入就绪状态。