gpt4 book ai didi

codenameone - 等待变量更改其值的最佳方法

转载 作者:行者123 更新时间:2023-12-04 09:09:22 24 4
gpt4 key购买 nike

我意识到我要问的更像是一个通用的 Java 问题而不是一个特定的 Codename One 问题,无论如何,考虑到引用 API 是 Codename One 的,是否有一种更优雅、更可靠的方法来处理如下情况代码?如果我需要同步编写本质上与回调异步的代码,就会发生这种情况:

while (lock) {
CN.invokeAndBlock(() -> Util.sleep(500));
}
我在这里引用了这样的代码: https://github.com/codenameone/CodenameOne/issues/3192

最佳答案

JavaSE 有一些非常酷的功能可以做到这一点,但我们目前不支持它们,例如CountDownLatch .
但这仍然很容易做到:

public class SharedVar<T> {
private T var;
public T get() { return var; }
public synchronized void set(T var) {
this.var = var;
notifyAll();
}
public synchronized T waitForChange() {
wait();
return var;
}
}

关于codenameone - 等待变量更改其值的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63385557/

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