Makes a kernel thread blocked by the uexblock service runnable again.
#include <sys/types.h> #include <sys/errno.h> #include <sys/except.h>
void uexclear (tid) tid_t *tid;
tid | Specifies the thread ID of the previously blocked kernel thread to be put into a run state. |
The uexclear kernel service puts a kernel thread specified by the tid parameter back into a runnable state after it was made nonrunnable by the uexblock kernel service. A thread that has been sent a SIGSTOP stop signal is made runnable again when it receives the SIGCONT continuation signal.
The uexclear kernel service can be used to lazily control user-mode thread access to a shared serially usable resource. A serially used resource is usable by more than one thread, but only by one at a time. When a thread attempts to access the resource but does not have access, a user-mode exception can be setup to occur.
This setup gives control to an exception handler registered by the uexadd kernel service. Using the uexblock kernel service, this exception handler can then block the thread until the resource is later made available. At that time, the uexclear service can be used to make the blocked thread runnable.
The uexclear kernel service can be called from either the process or interrupt environment.
The uexclear service has no return values.
The uexclear kernel service is part of Base Operating System (BOS) Runtime.
The uexblock kernel service.
User-Mode Exception Handling and Kernel Extension and Device Driver Management Services in AIX Kernel Extensions and Device Support Programming Concepts.