gpt4 book ai didi

java - 在 JavaFX 中,observableArrayList 线程安全吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:50:24 25 4
gpt4 key购买 nike

我通过修改可观察数组列表来更新表,但现在 2 个线程可能会修改可观察数组列表。我应该将修改列表的代码放在同步方法中,还是只允许 1 个线程修改列表?

最佳答案

对于这个特定的用例 - ObservableList 绑定(bind)到 TableView,您只能从 FX Application Thread 访问列表。这是因为对列表的更改将导致对 TableViewall changes to the scene graph must occur on the FX Application Thread 的更改。 .

所以在这种情况下,关于 ObservableList 是否线程安全的问题是一个有争议的问题:由于其他原因你只能从单个线程访问它,所以你不需要它成为。

如果您有一个需要更新列表的后台线程,您可以将这些更新包装在对 Platform.runLater(...) 的调用中,从而安排这些更新在 FX 应用程序线程上发生。 , 或者(这可能更可取)通过使用 javafx.concurrent API管理您的线程。

关于java - 在 JavaFX 中,observableArrayList 线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32498307/

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