Java:ManualResetEvent

来源:互联网 发布:mac 共享文件夹 防火墙 编辑:程序博客网 时间:2024/05/22 17:44
package net.csdn.blog.jhqin.util;public class ManualResetEvent {private final Object monitor = new Object();private volatile boolean open = false;public ManualResetEvent(boolean initialState){open = initialState;}public boolean WaitOne() throws InterruptedException{synchronized (monitor) {if (!open) monitor.wait();return open;}}public boolean WaitOne (long timeout) throws InterruptedException{synchronized (monitor){if (!open) monitor.wait(timeout);return open;}}public void Set(){synchronized (monitor){open = true;monitor.notifyAll();}}public void Reset(){open = false;}}

原创粉丝点击