diff --git a/trpc/coroutine/fiber_blocking_noncontiguous_buffer.h b/trpc/coroutine/fiber_blocking_noncontiguous_buffer.h index 41d1d9e5..59bd1e24 100644 --- a/trpc/coroutine/fiber_blocking_noncontiguous_buffer.h +++ b/trpc/coroutine/fiber_blocking_noncontiguous_buffer.h @@ -145,7 +145,10 @@ class FiberBlockingNoncontiguousBuffer { } void Stop() { - stop_token_ = true; + { + std::lock_guard lk(mutex_); + stop_token_ = true; + } not_full_.notify_one(); not_empty_.notify_one(); }