diff options
author | 2017-11-21 16:22:00 -0500 | |
---|---|---|
committer | 2017-11-21 16:22:00 -0500 | |
commit | e8bb8749ed8bc7e76f5de91370c7d8600059ff98 (patch) | |
tree | 01274952c6144f919ebfb2cecb73637dd37397f0 /src/core/lib/iomgr/lockfree_event.h | |
parent | abdc290d26a059aa814d32da4e09643db9eaf0d3 (diff) | |
parent | 9c26f6866ac31c5ebe1d4bb48e81cdda5264921a (diff) |
Merge branch 'master' of https://github.com/grpc/grpc into no-more-extern-c
Diffstat (limited to 'src/core/lib/iomgr/lockfree_event.h')
-rw-r--r-- | src/core/lib/iomgr/lockfree_event.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/core/lib/iomgr/lockfree_event.h b/src/core/lib/iomgr/lockfree_event.h index c667dcd3bc..aec67a3399 100644 --- a/src/core/lib/iomgr/lockfree_event.h +++ b/src/core/lib/iomgr/lockfree_event.h @@ -30,11 +30,16 @@ namespace grpc_core { class LockfreeEvent { public: LockfreeEvent(); - ~LockfreeEvent(); LockfreeEvent(const LockfreeEvent&) = delete; LockfreeEvent& operator=(const LockfreeEvent&) = delete; + // These methods are used to initialize and destroy the internal state. These + // cannot be done in constructor and destructor because SetReady may be called + // when the event is destroyed and put in a freelist. + void InitEvent(); + void DestroyEvent(); + bool IsShutdown() const { return (gpr_atm_no_barrier_load(&state_) & kShutdownBit) != 0; } |