Enqueue a work item */
| 87 | } |
| 88 | /** Enqueue a work item */ |
| 89 | bool Enqueue(WorkItem* item) |
| 90 | { |
| 91 | std::unique_lock<std::mutex> lock(cs); |
| 92 | if (queue.size() >= maxDepth) { |
| 93 | return false; |
| 94 | } |
| 95 | queue.emplace_back(std::unique_ptr<WorkItem>(item)); |
| 96 | cond.notify_one(); |
| 97 | return true; |
| 98 | } |
| 99 | /** Thread function */ |
| 100 | void Run() |
| 101 | { |