,你雖然它搜索速度非常快,我甚至不能沒有多線程我還是想知道我將如何使用多線程對這個如何使一個新線程搜索
注意到這類型的功能,我已經搜索search.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observableValue, String s, String s2) {
manager.searchString(s2);
listView.getItems().setAll(manager.getList());
}
});
所以基本上有一個TextField
,當它的文本被改變時,我去調用對象manager
中的搜索方法,當搜索結果完成後,它將其搜索結果放入數組中。
然後當ListView
完成時,它應該將其數據更新到這個新數組。
如何在一個線程上進行搜索,何時完成更新列表數據?
我相信我不能從其他線程調用列表函數,因爲GUI的東西應該只從一個線程調用。
對於Swing,有一個關於併發性的好文檔(http://docs.oracle.com/javase/tutorial/uiswing/concurrency/)。對於JavaFX,似乎有一個[類似文檔](http://docs.oracle.com/javafx/2/threads/jfxpub-threads.htm),雖然沒有讀過它... – dst