Go to the documentation of this file.
30 #define MAX_THREADPOOL_SIZE 1024
194 val =
getenv(
"UV_THREADPOOL_SIZE");
238 memcpy(&
once, &child_once,
sizeof(child_once));
331 if (
req->after_work_cb == NULL)
static unsigned int slow_io_work_running
#define ARRAY_SIZE(array)
static void reset_once(void)
void uv__work_done(uv_async_t *handle)
static void post(QUEUE *q, enum uv__work_kind kind)
#define uv__req_init(loop, req, typ)
void * uv__malloc(size_t size)
UV_EXTERN int uv_mutex_init(uv_mutex_t *handle)
static void worker(void *arg)
UV_EXTERN void uv_mutex_destroy(uv_mutex_t *handle)
int uv_cancel(uv_req_t *req)
void(* done)(struct uv__work *w, int status)
UV_EXTERN int uv_thread_join(uv_thread_t *tid)
#define QUEUE_DATA(ptr, type, field)
#define container_of(ptr, type, member)
UV_EXTERN void uv_cond_wait(uv_cond_t *cond, uv_mutex_t *mutex)
static uv_thread_t * threads
static void uv__queue_done(struct uv__work *w, int err)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
static void init_once(void)
UV_EXTERN void uv_once(uv_once_t *guard, void(*callback)(void))
UV_EXTERN void uv_cond_destroy(uv_cond_t *cond)
static void work_cb(uv_work_t *req)
static QUEUE slow_io_pending_wq
static void uv__queue_work(struct uv__work *w)
static unsigned int slow_work_thread_threshold(void)
int uv_queue_work(uv_loop_t *loop, uv_work_t *req, uv_work_cb work_cb, uv_after_work_cb after_work_cb)
pthread_mutex_t uv_mutex_t
static unsigned int nthreads
UV_DESTRUCTOR(static void cleanup(void))
UV_EXTERN int uv_thread_create(uv_thread_t *tid, uv_thread_cb entry, void *arg)
#define MAX_THREADPOOL_SIZE
static QUEUE exit_message
UV_EXTERN void uv_mutex_unlock(uv_mutex_t *handle)
UV_PLATFORM_SEM_T uv_sem_t
void(* uv_after_work_cb)(uv_work_t *req, int status)
void(* work)(struct uv__work *w)
UV_EXTERN void uv_sem_post(uv_sem_t *sem)
UV_EXTERN int uv_sem_init(uv_sem_t *sem, unsigned int value)
static unsigned int idle_threads
void(* uv_work_cb)(uv_work_t *req)
static QUEUE run_slow_work_message
static void init_threads(void)
static uv_thread_t default_threads[4]
UV_EXTERN void uv_sem_destroy(uv_sem_t *sem)
UV_EXTERN void uv_mutex_lock(uv_mutex_t *handle)
UV_EXTERN int uv_cond_init(uv_cond_t *cond)
UV_EXTERN void uv_cond_signal(uv_cond_t *cond)
static void after_work_cb(uv_work_t *req, int status)
UV_EXTERN void uv_sem_wait(uv_sem_t *sem)
static uv_work_t work_req
void uv__work_submit(uv_loop_t *loop, struct uv__work *w, enum uv__work_kind kind, void(*work)(struct uv__work *w), void(*done)(struct uv__work *w, int status))
static int uv__work_cancel(uv_loop_t *loop, uv_req_t *req, struct uv__work *w)
#define QUEUE_INSERT_TAIL(h, q)
static void uv__cancelled(struct uv__work *w)
#define uv__req_unregister(loop, req)
UV_EXTERN int uv_async_send(uv_async_t *async)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:37