void thread_set_state_runnable(threadobject *t)
{
- /* Set the state inside a lock. */
-
- ThreadList::lock();
-
if (t->state != THREAD_STATE_TERMINATED) {
thread_set_state(t, THREAD_STATE_RUNNABLE);
DEBUGTHREADS("is RUNNABLE", t);
}
-
- ThreadList::unlock();
}
void thread_set_state_waiting(threadobject *t)
{
- /* Set the state inside a lock. */
-
- ThreadList::lock();
-
if (t->state != THREAD_STATE_TERMINATED) {
thread_set_state(t, THREAD_STATE_WAITING);
DEBUGTHREADS("is WAITING", t);
}
-
- ThreadList::unlock();
}
void thread_set_state_timed_waiting(threadobject *t)
{
- /* Set the state inside a lock. */
-
- ThreadList::lock();
-
if (t->state != THREAD_STATE_TERMINATED) {
thread_set_state(t, THREAD_STATE_TIMED_WAITING);
DEBUGTHREADS("is TIMED_WAITING", t);
}
-
- ThreadList::unlock();
}
void thread_set_state_parked(threadobject *t)
{
- /* Set the state inside a lock. */
-
- ThreadList::lock();
-
if (t->state != THREAD_STATE_TERMINATED) {
thread_set_state(t, THREAD_STATE_PARKED);
DEBUGTHREADS("is PARKED", t);
}
-
- ThreadList::unlock();
}
void thread_set_state_timed_parked(threadobject *t)
{
- /* Set the state inside a lock. */
-
- ThreadList::lock();
-
if (t->state != THREAD_STATE_TERMINATED) {
thread_set_state(t, THREAD_STATE_TIMED_PARKED);
DEBUGTHREADS("is TIMED_PARKED", t);
}
-
- ThreadList::unlock();
}