本流程从启动应用程序后的main函数开始跟踪。
解析命令行参数并保存到ngx_cycle_t结构体中,在ngx_process_options函数中将保存配置文件路径。
调用ngx_add_inherited_sockets函数获取环境变量中关于平滑升级的一些信息。平滑升级时,旧的master进程会通过环境变量发送传递一些信息给新的master进程,新的master进程启动后要...
分类:
其他好文 时间:
2014-07-08 15:33:20
阅读次数:
191
可选值
使用可选(optionals)来处理值可能缺失的情况。可选表示:
有值,等于 x 或者没有值
注意:
C 和 Objective-C 中并没有可选这个概念。最接近的是 Objective-C 中的一个特性,一个方法要不返回一个对象要不返回nil,nil表示“缺少一个合法的对象”。然而,这只对对象起作用——对于结构体,基本的 C 类型或者枚举类型不起作用。对于这些类型,Objec...
分类:
编程语言 时间:
2014-07-08 10:46:37
阅读次数:
218
1.背景多次学习C语言一直无法踏入C语言的大门,每次都是在学习C语言中的那些系统调用库函数等望而却只,linux下的系统调用需要我们去记忆一些没有规律的结构体和一些大写的宏定义并且还有一个函数多种形式的例如printfprintfsprintf等等,看起来就很不爽,写起东西来真的很无语..
分类:
系统相关 时间:
2014-07-08 08:08:55
阅读次数:
181
macro :#define list_entry(ptr,type,member) \ ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member)))功能 从一个结构的成员指针找到其容器的指针原理: ptr是指向type结构体...
分类:
其他好文 时间:
2014-07-06 23:16:44
阅读次数:
318
使用socket编程。一、需要套接字库。要知道申请的套接字库的版本,版本号利用WORD类型表示:MAKEWORD,加载后要检查得到的是否是申请的版本。二、需要创建套接字。套接字SOCKET结构体。三、SOCKET对象和SOCKADDR套接字地址绑定,对TCP\IP编程中,可以用SOCKADDR_IN...
分类:
其他好文 时间:
2014-07-06 18:34:39
阅读次数:
181
方法方法是与某些特定类型相关联的函数。类、结构体、枚举都可以定义实例方法;实例方法为给定类型的实例封装了具体的任务与功能。类、结构体、枚举也可以定义类型方法;类型方法与类型本身相关联。类型方法与 Objective-C 中的类方法(class methods)相似。结构体和枚举能够定义方法是 Swi...
分类:
其他好文 时间:
2014-07-06 17:59:29
阅读次数:
260
我知道typedef是类型别名的意思,也知道结构体如何定义。
但下面的代码:
typedef struct node{
struct node*lchild;
char data;
struct node*rchild;
}bitnode,*bitree;
那这样结构体后面的是对象还是别名呢?我感觉应该是对象,但typedef又无从说起。
然后接着有
bitree crea...
分类:
编程语言 时间:
2014-07-06 12:25:16
阅读次数:
179
高度模块化的设计是Nginx的架构基础。所有模块都是以ngx_module_t结构体表示,该结构体内部定义了7个回调方法,它们负责模块的初始化和退出。commands成员是一个包含有ngx_command_t结构体的数组,ngx_command_t的作用就是解析配置项。ctx是一个void指针,这使得模块具有高度灵活性。
ctx可以指向不同类型模块的通用接口,官方Nginx共有5大类模块...
分类:
其他好文 时间:
2014-07-06 11:49:04
阅读次数:
246
标题里面的三个都是结构体有时候可能需要比较他们的一些逻辑关系例如CGPoint p1 ,p2;。。。。。。比较p1 和 p2是否相等,以前都是自己逐个比较的后来发现有CGPointEqualToPoint(p1,p2)~这样就会返回这两个CGPoint变量是否相等~同理还有CGSizeEqualTo...
分类:
其他好文 时间:
2014-07-05 22:01:08
阅读次数:
252