Немного толку от перехвата общего "в программе произошла ошибка". Ну перехватили и что будете делать? Данные уже наверняка искалечены, остается показать окно с извинениями и выйти (да и то неизвестно живы ли еще окна). Имеет смысл перехватывать на каком-то участке, для этого есть try catch на любой платформе. Хотя перехват обращения по неверному адресу и возможен, это ошибка в программе которую надо исправлять, а не перехватывать
Такое поведение подходит для офисных приложений.
А если процесс управляет чем-то серьезным? Извиниться и выйти...
Почему все данные должны быть искалечены? Часть - может быть, но не все!
Например, перехватив подобные сигналы, можно в обработчике, сохранить важные параметры и спокойно умереть, а процесс-контроллер получит сигнал, что один из дочерних процессов убит и перезапустит его. Дальше считываем сохраненные параметры и продолжаем работу.