Como aguardar a entrada do usuário no encadeamento de aplicativo JavaFX sem usar showAndWait?

Gostaria de pausar a execução de um método no encadeamento de aplicativo JavaFX e aguardar até que o usuário interaja com a interface do usuário. É importante não congelar a interface do usuário.

Exemplo:

Button start = ...
Button resume = ...

start.setOnAction(evt -> {
     System.out.println("starting");
     start.setDisable(true);
     System.out.println("please press resume button.");
     pause();
     System.out.println("done");
     start.setDisable(false);
});

resume.setOnAction(evt -> resume());

Como devo implementar opause() eresume() métodos?
A execução do manipulador de eventos deve esperar empause(); até o usuário pressionar oresume botão e oresume método é chamado.

questionAnswers(2)

yourAnswerToTheQuestion