前面设计同步队列的代码,下面详细说说实现。
Push
void Push(T&& task) {
std::unique_lock<std::mutex> lock{
mutex_};
not_full_variable_.wait(lock, [this]{
return queue_.size() < max_size_; });
queue_.push(std::forward<T>(task));
not_empty_variable_.notify_one();
}
void

最低0.47元/天 解锁文章
1538

被折叠的 条评论
为什么被折叠?



