19 #ifndef GRPC_CORE_LIB_IOMGR_EXECUTOR_H
20 #define GRPC_CORE_LIB_IOMGR_EXECUTOR_H
57 explicit Executor(
const char* executor_name);
108 static void ThreadMain(
void* arg);
Definition: executor.h:55
Executor(const char *executor_name)
Definition: executor.cc:92
static bool IsThreadedDefault()
Definition: executor.cc:451
bool IsThreaded() const
Is the executor multi-threaded?
Definition: executor.cc:136
static void SetThreadingAll(bool enable)
Definition: executor.cc:455
void Init()
Definition: executor.cc:98
static void InitAll()
Definition: executor.cc:386
void SetThreading(bool threading)
Definition: executor.cc:140
static void Run(grpc_closure *closure, grpc_error_handle error, ExecutorType executor_type=ExecutorType::DEFAULT, ExecutorJobType job_type=ExecutorJobType::SHORT)
Definition: executor.cc:407
static void ShutdownAll()
Definition: executor.cc:413
void Shutdown()
Shutdown the executor, running all pending work as part of the call.
Definition: executor.cc:213
void Enqueue(grpc_closure *closure, grpc_error_handle error, bool is_short)
Enqueue the closure onto the executor.
Definition: executor.cc:254
static void SetThreadingDefault(bool enable)
Definition: executor.cc:463
intptr_t gpr_atm
Definition: atm_gcc_atomic.h:30
pthread_cond_t gpr_cv
Definition: sync_posix.h:46
pthread_mutex_t gpr_mu
Definition: sync_posix.h:45
grpc_error_handle error
Definition: lame_client.cc:54
Round Robin Policy.
Definition: backend_metric.cc:26
ExecutorJobType
Definition: executor.h:49
void grpc_executor_global_init()
Definition: executor.cc:468
ExecutorType
Definition: executor.h:42
grpc_closure closure
Definition: server.cc:460
Definition: spinlock.h:29
A closure over a grpc_iomgr_cb_func.
Definition: closure.h:56
Definition: executor.h:30
grpc_closure_list elems
Definition: executor.h:35
gpr_mu mu
Definition: executor.h:31
bool shutdown
Definition: executor.h:37
const char * name
Definition: executor.h:33
gpr_cv cv
Definition: executor.h:34
bool queued_long_job
Definition: executor.h:38
size_t depth
Definition: executor.h:36
grpc_core::Thread thd
Definition: executor.h:39
size_t id
Definition: executor.h:32
Definition: error_internal.h:41