mirror of
https://github.com/nginx/nginx.git
synced 2024-11-29 09:19:00 +08:00
37 lines
844 B
C
37 lines
844 B
C
|
|
/*
|
|
* Copyright (C) Nginx, Inc.
|
|
* Copyright (C) Valentin V. Bartenev
|
|
*/
|
|
|
|
|
|
#ifndef _NGX_THREAD_POOL_H_INCLUDED_
|
|
#define _NGX_THREAD_POOL_H_INCLUDED_
|
|
|
|
|
|
#include <ngx_config.h>
|
|
#include <ngx_core.h>
|
|
#include <ngx_event.h>
|
|
|
|
|
|
struct ngx_thread_task_s {
|
|
ngx_thread_task_t *next;
|
|
ngx_uint_t id;
|
|
void *ctx;
|
|
void (*handler)(void *data, ngx_log_t *log);
|
|
ngx_event_t event;
|
|
};
|
|
|
|
|
|
typedef struct ngx_thread_pool_s ngx_thread_pool_t;
|
|
|
|
|
|
ngx_thread_pool_t *ngx_thread_pool_add(ngx_conf_t *cf, ngx_str_t *name);
|
|
ngx_thread_pool_t *ngx_thread_pool_get(ngx_cycle_t *cycle, ngx_str_t *name);
|
|
|
|
ngx_thread_task_t *ngx_thread_task_alloc(ngx_pool_t *pool, size_t size);
|
|
ngx_int_t ngx_thread_task_post(ngx_thread_pool_t *tp, ngx_thread_task_t *task);
|
|
|
|
|
|
#endif /* _NGX_THREAD_POOL_H_INCLUDED_ */
|