| 128 | return ret; |
| 129 | } |
| 130 | void ThreadPoolBase::join(TPControl* pCtrl) |
| 131 | { |
| 132 | if (m_capacity == 0 || __should_bypass_threadpool()) { |
| 133 | photon::thread_join((photon::join_handle*)pCtrl->th); |
| 134 | return; |
| 135 | } |
| 136 | auto should_put = do_thread_join(pCtrl); |
| 137 | if (should_put) |
| 138 | pCtrl->pool->put(pCtrl); |
| 139 | } |
| 140 | int ThreadPoolBase::ctor(ThreadPoolBase* pool, TPControl** out) |
| 141 | { |
| 142 | auto pCtrl = (TPControl*)CURRENT; |