У меня есть графический интерфейс, который напоминает интерпретатор. Он позволяет пользователю написать скрипт на Jython (реализация Python на Java) и запускать его в любое время. Кроме того, я также хочу, чтобы пользователь мог мгновенно завершить прогон, когда захочет.
Дело в том, что я действительно не знаю, как это сделать. Сценарий запускается в другом потоке, но я не знаю никакого безопасного способа остановить/прервать/завершить поток в середине его выполнения, не говоря уже о том, чтобы не знать, что запускается потоком/скриптом (это может быть простой задачей или, может быть, каким-то тяжелым SQL-запросом к БД, а БД — это то, что требует тщательной обработки ресурсов).
Как я могу мгновенно прекратить такой запуск по требованию?