| 112 | } |
| 113 | |
| 114 | int ThreadCommon::join() |
| 115 | { |
| 116 | CHECK_FUNCTION_CONTEXT(); |
| 117 | |
| 118 | if (&getThreadControlBlock() == &getScheduler().getCurrentThreadControlBlock()) |
| 119 | return EDEADLK; |
| 120 | |
| 121 | int ret; |
| 122 | while ((ret = joinSemaphore_.wait()) == EINTR); |
| 123 | return ret; |
| 124 | } |
| 125 | |
| 126 | #if DISTORTOS_SIGNALS_ENABLE == 1 |
| 127 |