Thread.sleep()方法发送到“NotRunnable的”当前线程的一些时间。
线程保持的显示器有aquired的 - 也就是说,如果该线程是目前在synchronized块或方法没有其他线程可以进入此块或方法。
如果另一个线程调用t.interrupt(),它会唤醒沉睡的线程。
请注意,睡眠是一个静态方法,这意味着它总是影响当前线程(一个正在执行的睡眠方法)。
一个常见的错误是来调用t.sleep(),其中t是一个不同的线程,即使在当时,它是当前线程会睡,而不是在T线程。 t.suspend()已过时。
使用它可以停止当前线程以外的线程。
暂停的线程保持其所有的显示器,因为这种状态是不中断的僵局容易。 object.wait()发送到当前线程“的Runnable”状态,如睡眠(),但与一捻。
被称为等待一个对象,而不是一个线程调用此对象的“锁定对象。” 当前线程lock.wait()被调用之前,必须同步锁定对象上等待(),然后释放该锁,并增加了线程与锁相关的“等待名单”。
后来,另一个线程可以在同一锁对象和调用lock.notify()同步。
这唤醒原来,等待线程。
基本上,等待()/通知(),如睡眠是()/打断(),唯一的活动线程的睡眠线程,并不需要一个直接指针,但只共享的锁对象。
不知道能不能帮到你. |