| 151 | return 0; |
| 152 | } |
| 153 | int ThreadPoolBase::dtor(ThreadPoolBase* tpb, TPControl* pCtrl) |
| 154 | { |
| 155 | { |
| 156 | SCOPED_LOCK(pCtrl->m_mtx); |
| 157 | if (pCtrl->start) { // it's running |
| 158 | assert(pCtrl->start != &stub); |
| 159 | pCtrl->joinable = true; |
| 160 | pCtrl->m_mtx.unlock(); |
| 161 | tpb->join(pCtrl); |
| 162 | pCtrl->m_mtx.lock(); |
| 163 | } |
| 164 | pCtrl->start = &stub; |
| 165 | pCtrl->cvar.notify_all(); |
| 166 | } |
| 167 | thread_yield(); |
| 168 | return 0; |
| 169 | } |
| 170 | } |
no test coverage detected