最佳答案
您可以将单个实例存储在类的静态字段中,任意数量的线程都可以等待
。实例存储在哪里并不重要。关键是所有线程都可以访问同一个实例——无论是来自静态字段/方法、单例服务对象还是静态局部变量。
public class MakeMeWait {
private static Object semaphore = new Object();
public static void waitPlease() {
semaphore.wait();
}
public static void wakePlease() {
semaphore.notifyAll();
}
}
虽然此示例使用内置的 Java wait
和 notifyAll
方法,但最好还是使用 java.util.concurrent
打包而不是滚动您自己的多线程解决方案。
关于java - 为条件/等待java创建一个静态成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9765244/