Мне нужно обновить просмотр списка на javafx, я попробовал два решения:
1.
Task task = new Task<Void>() {
@Override public Void call() {
while (true){
visitsDataList = reqController.getVisits(userBean);
Platform.runLater(() -> {
observableList.clear();
observableList.setAll(visitsDataList);
listVisits.setItems(observableList);
listVisits.setCellFactory(List -> new CustomVisitRow());
});
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
2.
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
visitsDataList = reqController.getVisits(userBean);
Platform.runLater(() -> {
observableList.clear();
observableList.setAll(visitsDataList);
listVisits.setItems(observableList);
listVisits.setCellFactory(List -> new CustomVisitRow());});
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();}}}}).start();
, но я не уверенпотому что я считаю, что создано слишком много Runnable. есть другие решения? какое из моих решений лучшее?