src/os/unix/ngx_process_cycle.h - nginx-1.7.10

Data types defined

Macros defined

Source code


  1. /*
  2. * Copyright (C) Igor Sysoev
  3. * Copyright (C) Nginx, Inc.
  4. */


  5. #ifndef _NGX_PROCESS_CYCLE_H_INCLUDED_
  6. #define _NGX_PROCESS_CYCLE_H_INCLUDED_


  7. #include <ngx_config.h>
  8. #include <ngx_core.h>


  9. #define NGX_CMD_OPEN_CHANNEL   1
  10. #define NGX_CMD_CLOSE_CHANNEL  2
  11. #define NGX_CMD_QUIT           3
  12. #define NGX_CMD_TERMINATE      4
  13. #define NGX_CMD_REOPEN         5


  14. #define NGX_PROCESS_SINGLE     0
  15. #define NGX_PROCESS_MASTER     1
  16. #define NGX_PROCESS_SIGNALLER  2
  17. #define NGX_PROCESS_WORKER     3
  18. #define NGX_PROCESS_HELPER     4


  19. typedef struct {
  20.     ngx_event_handler_pt       handler;
  21.     char                      *name;
  22.     ngx_msec_t                 delay;
  23. } ngx_cache_manager_ctx_t;


  24. void ngx_master_process_cycle(ngx_cycle_t *cycle);
  25. void ngx_single_process_cycle(ngx_cycle_t *cycle);


  26. extern ngx_uint_t      ngx_process;
  27. extern ngx_pid_t       ngx_pid;
  28. extern ngx_pid_t       ngx_new_binary;
  29. extern ngx_uint_t      ngx_inherited;
  30. extern ngx_uint_t      ngx_daemonized;
  31. extern ngx_uint_t      ngx_threaded;
  32. extern ngx_uint_t      ngx_exiting;

  33. extern sig_atomic_t    ngx_reap;
  34. extern sig_atomic_t    ngx_sigio;
  35. extern sig_atomic_t    ngx_sigalrm;
  36. extern sig_atomic_t    ngx_quit;
  37. extern sig_atomic_t    ngx_debug_quit;
  38. extern sig_atomic_t    ngx_terminate;
  39. extern sig_atomic_t    ngx_noaccept;
  40. extern sig_atomic_t    ngx_reconfigure;
  41. extern sig_atomic_t    ngx_reopen;
  42. extern sig_atomic_t    ngx_change_binary;


  43. #endif /* _NGX_PROCESS_CYCLE_H_INCLUDED_ */