| 20 | } |
| 21 | |
| 22 | void ThinBlockManager::delWorker(const uint256& block, ThinBlockWorker& w) { |
| 23 | assert(builders.count(block)); |
| 24 | |
| 25 | bool ok = builders[block].workers.erase(&w); |
| 26 | assert(ok); // worker was working on block. |
| 27 | |
| 28 | if (builders[block].workers.empty()) |
| 29 | builders.erase(block); |
| 30 | |
| 31 | InFlightEraser& erase = *inFlightEraser; |
| 32 | erase(w.nodeID(), block); |
| 33 | } |
| 34 | |
| 35 | int ThinBlockManager::numWorkers(const uint256& block) const { |
| 36 | return builders.count(block) |