![]() |
MPRegisterDebugger |
||||
Header: | Multiprocessing.h | Carbon status: | Supported | |
Registers a debugger.
OSStatus MPRegisterDebugger ( MPQueueID queue, MPDebuggerLevel level );
The ID of the queue to which you want exception messages and other information to be sent.
The level of this debugger with respect to other debuggers. Exceptions and informational messages are sent first to the debugger with the highest level. If more than one debugger attempts to register at a particular level, only the first debugger is registered. Other attempts return an error.
A result code. If the number of registered debuggers exceeds the system limit, the function returns kMPInsufficientResourcesErr.
Exception messages are sent when tasks are suspended. When a task exception occurs, Multiprocessing Services notifies registered debuggers and other handlers in the following order:
The notification moves to the next lower level when a debugger (or eventually the task's local exception handler) calls the MPDisposeTaskException function with the indication that the exception be propagated. The exception messages sent to the debugger's queue are in the same format as those described in MPSetExceptionHandler.
The system may implement a limited number of debugger slots. It is possible no debugger support is provided.
Also see the function MPUnregisterDebugger.
Introduced with Multiprocessing Services 2.0.
Supported in Carbon. Available in CarbonLib 1.0 and later when MPLibrary 2.0 or later is installed. Exported by CarbonLib 1.0 and later and by MPLibrary 2.0 and later.