Go to the documentation of this file.
19 #ifndef GRPCPP_IMPL_CODEGEN_SYNC_H
20 #define GRPCPP_IMPL_CODEGEN_SYNC_H
26 #ifdef GPR_HAS_PTHREAD_H
32 #include "absl/synchronization/mutex.h"
50 #ifdef GPR_ABSEIL_SYNC
78 #ifdef GPR_HAS_PTHREAD_H
79 pthread_mutex_t do_not_use_pth_;
107 if (!released_)
mu_->Unlock();
121 bool released_ =
false;
145 #endif // GPR_ABSEIL_SYNC
147 template <
typename Predicate>
158 #endif // GRPCPP_IMPL_CODEGEN_SYNC_H
void Unlock() ABSL_UNLOCK_FUNCTION()
virtual void gpr_mu_unlock(gpr_mu *mu)=0
#define GPR_DEBUG_ASSERT(x)
virtual void gpr_cv_destroy(gpr_cv *cv)=0
virtual void gpr_cv_init(gpr_cv *cv)=0
virtual gpr_timespec gpr_inf_future(gpr_clock_type type)=0
static void WaitUntil(CondVar *cv, Mutex *mu, Predicate pred)
std::mutex do_not_use_sth_
ReleasableMutexLock(Mutex *mu) ABSL_EXCLUSIVE_LOCK_FUNCTION(mu)
CoreCodegenInterface * g_core_codegen_interface
~MutexLock() ABSL_UNLOCK_FUNCTION()
virtual void gpr_mu_lock(gpr_mu *mu)=0
void Release() ABSL_UNLOCK_FUNCTION()
virtual void gpr_cv_signal(gpr_cv *cv)=0
virtual int gpr_cv_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline)=0
void Lock() ABSL_EXCLUSIVE_LOCK_FUNCTION()
MutexLock(Mutex *mu) ABSL_EXCLUSIVE_LOCK_FUNCTION(mu)
virtual void gpr_mu_destroy(gpr_mu *mu)=0
#define ABSL_EXCLUSIVE_LOCK_FUNCTION(...)
virtual void gpr_mu_init(gpr_mu *mu)=0
~ReleasableMutexLock() ABSL_UNLOCK_FUNCTION()
CondVar & operator=(const CondVar &)=delete
#define ABSL_UNLOCK_FUNCTION(...)
#define ABSL_SCOPED_LOCKABLE
virtual void gpr_cv_broadcast(gpr_cv *cv)=0
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:28