void CPUThreadPoolExecutor::add( Func func, int8_t priority, std::chrono::milliseconds expiration, Func expireCallback) { CHECK(getNumPriorities() > 0); taskQueue_->addWithPriority( CPUTask(std::move(func), expiration, std::move(expireCallback)), priority); }
void CPUThreadPoolExecutor::add( Func func, int8_t priority, std::chrono::milliseconds expiration, Func expireCallback) { CHECK(getNumPriorities() > 0); auto result = taskQueue_->addWithPriority( CPUTask(std::move(func), expiration, std::move(expireCallback)), priority); if (!result.reusedThread) { ensureActiveThreads(); } }