Chinaunix首页 | 论坛 | 博客
  • 博客访问: 99961
  • 博文数量: 32
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2015-07-16 12:56
文章分类

全部博文(32)

文章存档

2017年(7)

2016年(25)

我的朋友

分类: LINUX

2016-04-07 10:09:00

nginx中用到了很多的ctx相关的变量命名,在没有确切意义的情况下,心情变得烦躁。
下面是ngx_module_s结构体的定义。
咨询强哥:ctx可以理解为context的缩写

点击(此处)折叠或打开

  1. struct ngx_module_s {
  2.     ngx_uint_t ctx_index; //所属分类标识
  3.     ngx_uint_t index; //模块计数器
  4.                                                             //以下预留成员暂未使用
  5.     ngx_uint_t spare0;
  6.     ngx_uint_t spare1;
  7.     ngx_uint_t spare2;
  8.     ngx_uint_t spare3;
  9.     ngx_uint_t version; //模块版本
  10.     void *ctx; //模块上下文
  11.     ngx_command_t *commands; //模块支持的命令集
  12.     ngx_uint_t type; //模块的种类
  13.                                                                     //回调函数
  14.     ngx_int_t (*init_master)(ngx_log_t *log); //主进程初始化时调用*/
  15.     ngx_int_t (*init_module)(ngx_cycle_t *cycle); //模块初始化时调用
  16.     ngx_int_t (*init_process)(ngx_cycle_t *cycle); //工作进程初始化时调用
  17.     ngx_int_t (*init_thread)(ngx_cycle_t *cycle); //线程初始化时调用
  18.     void (*exit_thread)(ngx_cycle_t *cycle); //线程退出时调用
  19.     void (*exit_process)(ngx_cycle_t *cycle); //退出工作进程时调用
  20.     void (*exit_master)(ngx_cycle_t *cycle); //退出主进程时调用
  21.                                                                     //以下预留成员暂未使用
  22.     uintptr_t spare_hook0;
  23.     uintptr_t spare_hook1;
  24.     uintptr_t spare_hook2;
  25.     uintptr_t spare_hook3;
  26.     uintptr_t spare_hook4;
  27.     uintptr_t spare_hook5;
  28.     uintptr_t spare_hook6;
  29.     uintptr_t spare_hook7;
  30.     };

阅读(1201) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~