gpt4 book ai didi

java - JavaFX 中属性的延迟初始化

转载 作者:行者123 更新时间:2023-11-29 08:02:16 24 4
gpt4 key购买 nike

似乎延迟初始化属性是 JavaFX 中常见的设计模式。例如,OpenJFX Labeled implementation包含以下片段:

public final StringProperty textProperty() {
if (text == null) {
text = new SimpleStringProperty(this, "text", "");
}
return text;
}

假设可以从 JavaFX UI 线程以及其他潜在的客户端线程访问该属性,并且此实现 is not thread safe ,这似乎是一个错误。考虑到该模式的使用频率,这要么是一个非常严重的问题,要么访问控件上的属性并不是线程安全的(而且我误解了 JavaFX 并发策略)。

谁能解释一下为什么延迟初始化线程不安全?

最佳答案

JavaFX 不是线程安全的,它与 Swing 一样是线程受限的。事实上,如果您不从 JavaFX 线程使用它,JavaFX API 中的许多方法都会抛出异常。

关于java - JavaFX 中属性的延迟初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13651974/

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