오늘은 JavaFX에 대해 배우기 시작했고 스네이크 클론을 작성하여 자세한 내용을 배우려고했지만 스레딩 문제가 있습니다. 화면에서 뱀의 위치를 업데이트 한 스레드를 만들고 싶었지만 정상적인 Runnable 스레드 방식으로는 사용할 수 없었습니다. 그 스레드 내에서 JavaFX를 사용하여 화면에 그린 직사각형 위치를 업데이트했기 때문에 (내가 배운 할 수 없으며 대신 Tasks, Services, Platform.runLater 등을 사용해야합니까?) JavaFX.scene.layout.Pane을 확장하여 스레드를 생성하는 클래스에서 뱀 위치를 업데이트하는 작업을 사용하려고합니다. . 내 문제는 : 작업은 단 한두 번 실행하고 중단, 나에게 어떤 인터럽트도주지 않고있다. 창을 확장하는 클래스에 대한JavaFX 작업 종료 및 JavaFX 스레딩
생성자 (뱀의 클래스가 확장 그룹) : 내가 실제로 가장 좋은 것은 여기에 무엇을 파악하지 않는 것처럼, 내가하려고 어떤 느낌
public GameFrame(){
this.setPrefSize(800, 600);
Snake snake = new Snake();
this.getChildren().add(snake);
taskThread = new Thread(new Task<Void>() {
protected Void call() throws Exception {
while(!Thread.currentThread().isInterrupted()){
snake.updatePosition();
try{
Thread.sleep(1000);
} catch(InterruptedException e){
break;
}
}
return null;
}
});
taskThread.start();
}
do는 hackish일지도 모른다. 내가해야 할 일에 대한 제안이나이를 해결할 수있는 방법이 있습니까?