| 120 | } // namespace detail |
| 121 | |
| 122 | void injectPauseSet(folly::StringPiece name, size_t numThreads) { |
| 123 | if (!injectPauseEnabled()) { |
| 124 | return; |
| 125 | } |
| 126 | auto ptr = pausePoints().lock(); |
| 127 | if (injectPauseLogEnabled()) { |
| 128 | XLOGF(ERR, "[{}] injectPauseSet threads {}", name, numThreads); |
| 129 | } |
| 130 | auto res = ptr->emplace( |
| 131 | std::piecewise_construct, std::make_tuple(name.str()), std::make_tuple()); |
| 132 | res.first->second.limit = numThreads; |
| 133 | res.first->second.enabled = true; |
| 134 | } |
| 135 | |
| 136 | void injectPauseSet(folly::StringPiece name, PauseCallback&& callback) { |
| 137 | if (!injectPauseEnabled()) { |