У нас есть ситуация, которую мы не можем воспроизвести сами, но которую видит один пользователь - приложение закрывается пользователем, закрывающим последнее окно, но не закрывается.
Мы уже исчерпали обычное для этого есть три причины:
Единственный работающий поток, не являющийся демоном, - main
- но при фактическом запуске приложения мы не оставляем основной поток открытым.
Все AWT windows были утилизированы (isValid()
возвращает false
).
События не публикуются в очереди событий. Мы убедились в этом, установив собственную очередь событий, которая начинает захват событий после того, как мы думаем, что должно произойти отключение, и ничего не происходит.
Это единственные три причины, о которых мы когда-либо слышали почему приложения не закрываются, так какой же четвертый?