Libevent的日志默认输出是stdout,但是可以通过设置回调函数,将日志保存到文件中去。 上面是一个全局的回调函数,需要定制回调函数的时候调用一下 event_set_log_callback 方法就可以设置成为对应的回调函数。 在 log_fn 不为空的时候,就调用该回调函数,否则就使用系统 ...
分类:
其他好文 时间:
2018-08-12 15:32:25
阅读次数:
457
匿名管道(pipe) 管道是一种最基本的IPC机制,由pipe函数创建: 调用pipe函数时在内核中开辟一块缓冲区(称为管道)用于通信,它有一个读端一个写端,然后通过filedes参数传出给用户程序两个文件描述符,filedes[0]指向管道的读端,filedes[1]指向管道的写端(很好记,就像0 ...
分类:
其他好文 时间:
2018-07-23 14:51:26
阅读次数:
231
首先先说说进程 1.进程产生 操作运行了一个程序,至少会产生一个进程 问题:进程与程序的区别?回答:程序就是一个编译好的可执行文件,而进程是操作系统为了执行一个程序而创建的,进程是程序的一次执行过程 二 进程相关的命令 1.ps -ef 查看进程的PID和PPID 2.ps aux 查看进程状态 R ...
分类:
其他好文 时间:
2018-07-05 13:29:12
阅读次数:
168
1. 利用 gdb 调试 1.1 绑定 Nginx 到 gdb 1. 利用 gdb 调试 Nginx,首先得在生成 Nginx 程序时把 g 编译选项打开。 2. 其次注意编译选项 O0,如果在 gdb 内打印变量时提示 "" 或 gdb 显示的当前正执行的代码行与源码匹配不上,则可能是因为 gcc ...
分类:
其他好文 时间:
2018-06-16 10:31:17
阅读次数:
226
服务端(server.php):<?phpset_time_limit(0);//设置主机和端口$host="127.0.0.1";$port=12387;//创建一个tcp流$socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)ordie("socket_create()failed:".socket_strerror(socket_last_
分类:
Web程序 时间:
2018-06-03 12:20:14
阅读次数:
171
errno 在 <errno.h> 中定义,错误 Exx 的宏定义在 /usr/include/asm-generic 文件夹下面的 errno-base.h 和 errno.h,分别定义了 1-34 、35-132 的错误定义。 strerror() 函数依据 errno 值返回错误描述字符串,下 ...
分类:
系统相关 时间:
2017-11-17 10:42:21
阅读次数:
248
1. 简介 很多系统函数在错误返回时将错误原因记录在libc定义的全局变量errno中,每种错误原因对应一个错误码。 errno在头文件errno.h中声明,是一个整型变量,所有错误码都是正整数。然后我们可以用perror或 strerror函数将errno解释成字符串 perror #includ ...
分类:
其他好文 时间:
2017-11-12 13:33:55
阅读次数:
132
一、程序中的错误处理 在系统中定义了一个全局变量errno。在这个全局变量中存放着系统调用或者库函数出错的信息(错误编号)。然后根据错误编号获取错误信息。 举例说明: 打开一个文件,如果这个文件不存在,查看错误信息。 代码参见 file.c perror(3) strerror(3) #includ... ...
分类:
数据库 时间:
2017-10-25 23:59:20
阅读次数:
410
这个程序演示了rename(),strerror(),system()函数的用法。 ...
分类:
系统相关 时间:
2017-10-20 20:08:03
阅读次数:
202
ret = pthread_create(&id,NULL,(void*)readThread,NULL); if(ret!=0) { printf("creat pthread id1 error : %s(errno : %d)\n",strerror(errno),errno); } 创建一个 ...
分类:
编程语言 时间:
2017-09-08 22:48:16
阅读次数:
237