Как работать с ^ C в консольных приложениях JVM?

Когда запускается JVM (на самом деле написана на Scala, но я склонен полагать, что решение будет примерно таким же для Groovy, Clojure или чистой Java ) моя консольная программа завершается нажатием пользователем Ctrl + C (или последовательностью выключения системы, я не знаю, есть ли разница для программы) , как мне убедиться, что внешние ресурсы, которые изменяет приложение (базы данных, файлы, абстрактные ресурсы веб-службы), остаются в предсказуемом, нелогически поврежденном состоянии?

5
задан Ivan 3 February 2012 в 12:33
поделиться