Ответ
G_Z 19.01.2016 18:20
$exception.handled(1) вообще достаточно огульный подход.
Игнорируя любые исключения в примере код проигнорирует и сигнал.
Но, как правильно пишет Олег, приложение не обязано завершатся.
При этом оба обсуждаемых сигнала — прерывания и их обработка в качестве исключений логична: действие прерывается, приложение может завершиться, а может продолжить работу.
Получается, что обработку сигналов придется по умолчанию выключать, и включать только когда это нужно?
Какой-то более вычурный, нежели исключения, интерфейс понадобился бы для обработки «уведомительных» сигналов.
Но есть сомнения в такой необходимости.
Полезны, разве что, SIGHUP да SIGALRM.
Более того, при необходимости их можно будет добавить в виде отдельного механизма, какого-нибудь глобального $signal, по аналогии с $exception, который бы просто был доступен для проверки и не вызывал исключений.
А «исключительные» сигналы так или иначе должны вызывать исключения.