javafx 线程同步 while true

javafx thread synchronization while true

我是 JavaFX 的新手,在线程方面遇到了一些问题。 我的应用程序必须做这样的事情(硬伪代码):

start(){
  startLoop(); //new thread
  displayThingsSavedToSharedVariable();
}



loop(){
  while (true){
    doThings();
    saveThingsToSharedVariable();
  }
}

我想在 JavaFX GUI 中显示来自 loop() 的最新输出,在终端中每行一个,但我不知道如何将线程与 [=12= 同步] 与 JavaFX 线程。共享变量只是我想要实现的一个 - 不起作用 - 示例,主要问题是如何从另一个线程中的无限循环动态地将文本打印到 JavaFX GUI。

更新 javafx gui 的正确方法是使用 Platform.runLater。

String mytext = deriveText();
Platform.runLater(()->{
    label.setText(mytext);
});

您也可以考虑使用 Observable 接口。