Когда вы вызываете close()
на вашем primaryStage, JavaFX вызывает обработчик, назначенный на setOnCloseRequest()
, если вы изменили его до того, как он выполнит ваш код , тогда закроет основной поток
Если у вас есть другие потоки, которые все еще работают, вы должны закрыть их самостоятельно, если они не являются потоками демонов, так как они все равно закрываются с приложением или вызывают System.exit(0)
ваше приложение принудительно закроет все потоки, открытые вашим приложением
Если хотите, я могу привести пример, который демонстрирует мои слова