0
|
1
|
|
2 /*
|
|
3 * Copyright (C) Igor Sysoev
|
|
4 */
|
|
5
|
|
6
|
|
7 #ifndef _NGX_PROCESS_CYCLE_H_INCLUDED_
|
|
8 #define _NGX_PROCESS_CYCLE_H_INCLUDED_
|
|
9
|
|
10
|
|
11 #include <ngx_config.h>
|
|
12 #include <ngx_core.h>
|
|
13
|
|
14
|
|
15 #define NGX_CMD_OPEN_CHANNEL 1
|
|
16 #define NGX_CMD_CLOSE_CHANNEL 2
|
|
17 #define NGX_CMD_QUIT 3
|
|
18 #define NGX_CMD_TERMINATE 4
|
|
19 #define NGX_CMD_REOPEN 5
|
|
20
|
|
21
|
|
22 typedef struct {
|
|
23 int argc;
|
|
24 char *const *argv;
|
|
25 } ngx_master_ctx_t;
|
|
26
|
|
27
|
|
28 #define NGX_PROCESS_SINGLE 0
|
|
29 #define NGX_PROCESS_MASTER 1
|
|
30 #define NGX_PROCESS_WORKER 2
|
|
31
|
|
32
|
|
33 void ngx_master_process_cycle(ngx_cycle_t *cycle, ngx_master_ctx_t *ctx);
|
|
34 void ngx_single_process_cycle(ngx_cycle_t *cycle, ngx_master_ctx_t *ctx);
|
|
35
|
|
36
|
|
37 extern ngx_uint_t ngx_process;
|
|
38 extern ngx_pid_t ngx_pid;
|
|
39 extern ngx_pid_t ngx_new_binary;
|
|
40 extern ngx_uint_t ngx_inherited;
|
|
41 extern ngx_uint_t ngx_daemonized;
|
|
42 extern ngx_uint_t ngx_threaded;
|
|
43 extern ngx_uint_t ngx_exiting;
|
|
44
|
|
45 extern sig_atomic_t ngx_reap;
|
|
46 extern sig_atomic_t ngx_timer;
|
|
47 extern sig_atomic_t ngx_sigio;
|
|
48 extern sig_atomic_t ngx_quit;
|
|
49 extern sig_atomic_t ngx_terminate;
|
|
50 extern sig_atomic_t ngx_noaccept;
|
|
51 extern sig_atomic_t ngx_reconfigure;
|
|
52 extern sig_atomic_t ngx_reopen;
|
|
53 extern sig_atomic_t ngx_change_binary;
|
|
54
|
|
55
|
|
56 #endif /* _NGX_PROCESS_CYCLE_H_INCLUDED_ */
|