Взгляните на Фокстрот , который работает не так, как большинство библиотек параллелизма Swing.
Вместо того, чтобы запускать фоновый поток для выполнения длительной задачи, он имитирует подход, используемый Swing, когда вы показываете модальное диалоговое окно, выполняя долгосрочную задачу в Swing EDT и запуская новый потокдля обработки событий графического интерфейса.
При работе с долго выполняющейся задачей, которая возвращает значение, с которым вам нужно немедленно действовать, это приводит к очень хорошему процедурному / непараллельному виду фрагмента программного кода (в точности какпроверка возвращаемого значения из JOptionPane.showConfirmDialog(...)
).