发布时间:2015-03-17 14:41:20
在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验新建一个Makefile,内容为:ifdef DEFINE_VRE VRE = “Hello World!”elseendififeq ($(OPT),define) VRE ?= “Hello World! First!”endifi.........【阅读全文】
发布时间:2015-03-14 12:15:03
引言“Oops,系统挂死了..."“Oops,程序崩溃了..."“Oops,命令执行报错..." 对于维护人员来说,这样的悲剧每天都在上演。理想情况下,系统或应用程序的错误日志提供了足够全面的信息,通过查看相关日志,维护人员就能很快地定位出问题发生的原因。但现实情况,许多错误日志打印模凌两可,更多.........【阅读全文】
发布时间:2015-03-14 11:34:36
Linux配置支持高并发TCP连接(socket最大连接数)1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件.........【阅读全文】
发布时间:2015-03-14 11:32:19
最近接的项目是模拟多个socket 客户端与服务器进行通信。由于Linux 系统的限制,在linux/include/linux/posix_types.h文件中有如下的宏定义:#undef __FD_SETSIZE#define __FD_SETSIZE 1024这个宏是对最大文件描述符的定义为1024。当需要1024个以上的fd时,例如select()函数就会侦听出错。因此需要将1024改成.........【阅读全文】