[Return to Bookshelf] [Contents] [Previous Section] [Next Section] [Index] [Help]


A.5.2 Handling Signals as Exceptions

For the signals traditionally representing synchronous errors in the program, DECthreads catches the signal and converts it into an equivalent exception. This exception is then propagated up the call stack in the current thread and can be caught and handled using the normal exception catching mechanisms.

The following table lists UNIX signals that are reported as DECthreads exceptions by default. If any thread declares an action for one of these signals (using sigaction(2) or equivalent), no thread in the process can receive the exception.

Table A-3 Signals Reported as Exceptions



Signal           Exception

SIGILL           pthread_exc_illinstr_e

SIGIOT           pthread_exc_SIGIOT_e

SIGEMT           pthread_exc_SIGEMT_e

SIGFPE           pthread_exc_aritherr_e

SIGBUS           pthread_exc_illaddr_e

SIGSEGV          pthread_exc_illaddr_e

SIGSYS           pthread_exc_SIGSYS_e

SIGPIPE          pthread_exc_SIGPIPE_e