47class ScopedResolverCancelGate {
49 ScopedResolverCancelGate() {
51 std::lock_guard<std::mutex> lock(state.mutex);
52 state.first_lookup_waiting =
false;
56 ~ScopedResolverCancelGate() {
59 std::lock_guard<std::mutex> lock(state.mutex);
62 state.released.notify_all();
65 ScopedResolverCancelGate(
const ScopedResolverCancelGate&) =
delete;
66 ScopedResolverCancelGate& operator=(
const ScopedResolverCancelGate&) =
delete;