gpt4 book ai didi

java - 更新 ObservableList 时线程挂起

转载 作者:行者123 更新时间:2023-12-01 14:20:44 24 4
gpt4 key购买 nike

我正在开发一个javafx应用程序,它有一个由ObservableList支持的ListView。

@FXML
private ListView<String> taggedQueriesResultsList;
private ObservableList<String> searchResultsList = FXCollections.observableArrayList();

ObservableList 通过使用 Executors.newSingleThreadScheduledExecutor() 的计划任务来更新数据,例如 list.add("something")。但是,计划任务在第一次之后就不再运行。 UI 在首次运行后更新。我注意到,如果我注释掉 list.add("something") 行,任务就会按计划定期运行。

我认为这是一些同步问题,但不确定。请帮助我了解发生了什么以及如何解决该问题。

最佳答案

确保始终从应用程序线程更新 GUI。请参阅http://docs.oracle.com/javafx/2/threads/jfxpub-threads.htm

对于线程安全的 ObservableCollection,请参见此处:Fast performing and thread safe observable collection

关于java - 更新 ObservableList 时线程挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17588401/

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