Lines Matching defs:thread
194 IOThread thread;
679 nub->retain(); // thread will release()
949 element->thread = IOThreadSelf();
970 // determine whether it is the same or a different thread trying to lock
971 if( active->thread != element->thread ) { // it is a different thread
975 // before placing this new thread on the waiting queue, we look for
979 // determine whether the active thread holding the object we
987 if( waiting->thread == active->thread ) {
994 if( found ) { // yes, active thread waiting for another object
1001 // find the thread that is holding this other object, that
1002 // is blocking the active thread from proceeding (fun :-)
1018 if( active->thread == element->thread ) {
1020 // doh, it's waiting for the thread that originated
1021 // this whole lock (ie. current thread) -> deadlock
1024 // the originating thread doesn't have the required
1029 } else { // originating thread is not willing to fail
1031 // see if we came across a waiting thread that did
1047 /* one thread */ true );
1049 // allow this thread to proceed (ie. wait)
1061 // repeat while loop, redefining active thread to be the
1062 // thread holding "this other object" (see above), and
1067 } else { // no, active thread is not waiting for another object
1077 // place this thread on the waiting queue and put it to sleep;
1084 // declare that this thread will wait for a given event
1092 // put thread to sleep, waiting for our event to fire...
1103 // ...plus a 3rd state, should the thread have been interrupted:
1174 } else { // it is the same thread, recursive access is allowed
1183 } else { // this object is not already locked, so let this thread through
1251 // determine whether a thread is waiting for object (head to tail scan)
1264 if ( found ) { // we found an interested thread on waiting queue
1278 // wake the waiting thread
1281 /* one thread */ true );
1325 invocation.thread = current_thread();
1544 if( next->thread != current_thread() ) {
1744 // wait to become the terminate thread
1772 IOLockWakeup( gJobsLock, (event_t) &gIOTerminateThread, /* one-thread */ false);
1782 IOLockWakeup(gJobsLock, (event_t) &gIOTerminateWork, /* one-thread */ false );
1799 IOLockWakeup( gJobsLock, (event_t) &gIOTerminateThread, /* one-thread */ false);
1816 IOLockWakeup(gJobsLock, (event_t) &gIOTerminateWork, /* one-thread */ false );
1833 IOLockWakeup(gJobsLock, (event_t) &gIOTerminateWork, /* one-thread */ false );
2359 invocation.thread = current_thread();
3161 IOLockWakeup( gJobsLock, (event_t) &gNumConfigThreads, /* one-thread */ false );
3223 // if( gNumConfigThreads) count++;// assume we're called from a config thread
3486 // priority doesn't help us much since we need a thread wakeup
3703 if( next->thread != current_thread() ) {