摘要: 转载:http://blog.csdn.net/u010657219/article/details/44061629在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,sel... 阅读全文
posted @ 2015-06-16 17:42 chenqiangzhishen 阅读(161) 评论(0) 推荐(0) 编辑
摘要: COW技术初窥: 在Linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制“技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。 那么子进程的物理空间没有代... 阅读全文
posted @ 2015-06-16 13:41 chenqiangzhishen 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 1.同步阻塞迭代模型 同步阻塞迭代模型是最简单的一种IO模型。 其核心代码如下: 1 2 3 4 5 6 7 8 bind(srvfd); listen(srvfd); for(;;){ clifd=accept(srvfd,...);//开始接受客户端来的连接 read(clifd,buf,... 阅读全文
posted @ 2015-06-15 14:34 chenqiangzhishen 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1.同步阻塞迭代模型同步阻塞迭代模型是最简单的一种IO模型。其核心代码如下:12345678bind(srvfd);listen(srvfd);for(;;){ clifd = accept(srvfd,...); //开始接受客户端来的连接 read(clifd,buf,...); ... 阅读全文
posted @ 2015-06-15 14:34 chenqiangzhishen 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/ 作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务... 阅读全文
posted @ 2015-06-15 13:42 chenqiangzhishen 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 用std::ifstream,std::ofstream作为函数参数传递时,必须通过引用传递,因为其copy方法被私有化,从而保证对象的唯一性。正确代码 3 #include 4 #include 5 using namespace std; 6 7 OrderEntr... 阅读全文
posted @ 2015-06-10 20:16 chenqiangzhishen 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 一、C++有而Java没有的特性由于Java本身就是从C++衍生出来的,这里只提C++具备的特性而被Java摒弃的——00、Java不再支持指针。这可能是C++和Java之间的最大不同。【注】既然JAVA中不存在指针,那么也不存在->操作符。01、Java不再支持操作符重载。02、Java不再包含结... 阅读全文
posted @ 2015-06-07 16:39 chenqiangzhishen 阅读(832) 评论(0) 推荐(0) 编辑
摘要: 为什么内联函数,构造函数,静态成员函数不能为virtual函数?1> 内联函数内联函数是在编译时期展开,而虚函数的特性是运行时才动态联编,所以两者矛盾,不能定义内联函数为虚函数。2> 构造函数构造函数用来创建一个新的对象,而虚函数的运行是建立在对象的基础上,在构造函数执行时,对象尚未形成,所以不能将... 阅读全文
posted @ 2015-06-04 13:31 chenqiangzhishen 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 静态函数用static声明的函数是静态函数。静态函数可以分为全局静态函数和类的静态成员函数。Static关键字在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化,对于该类的所有对象来说,static成员变量只有一份。用static声明的方法是静态方法,在调... 阅读全文
posted @ 2015-06-04 12:31 chenqiangzhishen 阅读(667) 评论(0) 推荐(0) 编辑
摘要: 1、什么是static? static 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性。 2、为什么要引入static? 函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样... 阅读全文
posted @ 2015-06-03 17:22 chenqiangzhishen 阅读(367) 评论(0) 推荐(0) 编辑