gpt4 book ai didi

Java 等待特定间隔通知不起作用

转载 作者:行者123 更新时间:2023-12-01 15:11:41 25 4
gpt4 key购买 nike

代码片段:

class Counter implements Runnable {
Object s = new Object();

@Override
public void run() {
try {
synchronized (s) {
s.wait(10000);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
//...do Something
}

public void stopCounter() {
synchronized (s) {
s.notifyAll();
}
}
}

无论我是否调用 stopCounter,...do Something 代码始终仅在等待间隔之后执行。即使在通知后它仍然等待 10 秒。

最佳答案

我无法从你的例子中看出你想要实现什么目标。如果要尝试替换某种轮询,请考虑 BlockingQueue Java 5 中发布的接口(interface)。自从它出现以来,我就不再需要等待/通知了。使用起来要简单得多,java 在后台为您执行相当于等待/通知的操作。

关于Java 等待特定间隔通知不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12263210/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com