void ct_penalize( unsigned penalty );
For example, after a time-consuming I/O operation, a thread may lower its own priority in order to give other threads a chance to catch up.
The lowered priority is effective only for the next invocation of the thread. After that, the thread returns to its normal priority level, unless it calls ct_penalize() again.
There is no corresponding function whereby a thread may raise its priority. The use of priority levels by the scheduler is discussed in detail elsewhere.
If the thread returns without emptying its message queue, the call to ct_penalize() will be ignored. The scheduler will enqueue the thread for execution at the highest priority.