Go to the documentation of this file.
32 #if defined(GRPC_WINSOCK_SOCKET)
35 const size_t THREADS = 3;
42 gpr_mu* pollset_mu[THREADS];
45 int main(
int argc,
char** argv) {
64 ThreadParams params = {};
67 std::vector<grpc_core::Thread>
threads;
68 for (
int i = 0;
i < THREADS;
i++) {
72 ThreadParams* tparams =
static_cast<ThreadParams*
>(params);
87 tparams->pollset_mu[tparams->queuing] =
mu;
114 params.queuing != THREADS &&
125 for (
int i = 0;
i < THREADS;
i++) {
135 params.complete != THREADS &&
144 int main(
int ,
char** ) {
return 0; }
GPRAPI void gpr_cv_signal(gpr_cv *cv)
GPRAPI void gpr_mu_unlock(gpr_mu *mu)
GPRAPI gpr_timespec gpr_inf_future(gpr_clock_type type)
grpc_error_handle grpc_pollset_work(grpc_pollset *pollset, grpc_pollset_worker **worker, grpc_core::Timestamp deadline)
static uv_thread_t * threads
void grpc_pollset_init(grpc_pollset *pollset, gpr_mu **mu)
constexpr absl::remove_reference_t< T > && move(T &&t) noexcept
GPRAPI void gpr_mu_init(gpr_mu *mu)
GPRAPI int gpr_cv_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline)
GPRAPI void gpr_mu_lock(gpr_mu *mu)
grpc_error_handle grpc_pollset_kick(grpc_pollset *pollset, grpc_pollset_worker *specific_worker)
grpc_core::ExecCtx exec_ctx
static constexpr Timestamp InfFuture()
GRPCAPI void grpc_init(void)
GPRAPI void gpr_cv_init(gpr_cv *cv)
grpc
Author(s):
autogenerated on Fri May 16 2025 02:59:44