49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
thread->done = true;
of_tlskey_thread_exited();
if (thread->detached)
detached = true;
else if (thread->joinTask != NULL)
Signal(thread->joinTask, 1 << thread->joinSigBit);
} @finally {
ReleaseSemaphore(&thread->semaphore);
}
if (detached)
free(thread);
}
|
|
|
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
thread->done = true;
of_tlskey_thread_exited();
if (thread->detached)
detached = true;
else if (thread->joinTask != NULL)
Signal(thread->joinTask, (1ul << thread->joinSigBit));
} @finally {
ReleaseSemaphore(&thread->semaphore);
}
if (detached)
free(thread);
}
|