| 171 | } |
| 172 | |
| 173 | void Thread::RunFunc() { |
| 174 | Callback(STARTED_CALLBACK); |
| 175 | Run(); |
| 176 | { |
| 177 | std::unique_lock<std::mutex> lock(mutex_); |
| 178 | finished_ = true; |
| 179 | timer_.Pause(); |
| 180 | } |
| 181 | Callback(FINISHED_CALLBACK); |
| 182 | } |
| 183 | |
| 184 | ThreadPool::ThreadPool(const int num_threads) |
| 185 | : stopped_(false), num_active_workers_(0) { |