2012-04-25 2 views
3

저는 JavaFX 2에 대한 완전한 멍청한 마음입니다. (오늘 아침에 내가 개편하고있는 HelloWorld로 시작했습니다.)백그라운드 작업 제출 및 결과로 스테이지 업데이트

텍스트 노드를 백그라운드 스레드의 결과로 업데이트해야합니다. JavaFX2에 대해 알아야 할 특별한 것이 있습니까? 아니면 단순히 호출 가능 코드를 제출하고 텍스트를 업데이트하기에 충분합니까? 튜토리얼에 대한 포인터가 인정 될 것이다.

답변

4

같은 배경 스레드 끝에

 Platform.runLater(new Runnable() { 
      @Override 
      public void run() { 
       // Update the text node with calculated results 
      } 
     }); 

실행 결과를 계산 한 후, 정상적인 상황에서 충분하다. 이 링크는 도움이 될 수도 있습니다 :
Execute task in background in JavaFX.

1

Platform.runLater()은 JavaFX 응용 프로그램 스레드에서 나중에 실행됩니다. 실행 된 내용이 빠른 실행 작업 (예 : I/O가없는 저렴한 계산 또는 UI 업데이트를위한 호출)이면 좋습니다. 애니메이션 또는 타이머 기반 작업에는 Timeline을 사용하십시오. 그렇지 않은 경우 또는 Service 기반 솔루션이 있으며 그 중 tutorial이 있습니다. JavaFX 응용 프로그램 스레드에서 활성 장면 그래프 (바인드에 의해 트리거 된 업데이트조차도)와 관련된 객체를 읽거나 쓰지 마십시오. 몇 가지 추가 논의 및 예는 forum thread에 있습니다.