http://hi.baidu.com/xiao1dian/blog/item/062c93d3ddde8337970a1693.html
多重继承和虚继承的内存布局
http://blog.csdn.net/littlehedgehog/archive/2010/04/01/5442430.aspx
C++类对应的内存结构
http://hi.baidu.com/hailoong/blog/item/0382960e7bf583c17bcbe1d7.html
http://www.cnblogs.com/shipfi/archive/2008/08/04/1260293.html
http://www.cppblog.com/images/cppblog_com/xguru/14114/o_vim_cheat_sheet1.jpg
#include <stdio.h> #include <memory.h> #define LEN 6 //O(n2) //stable void DirectInsertSort(int *a, int len) { int n = 0; int x = 0; int tmp = 0; int move = 0; int y = 0; &..
不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序
最常见的有两种
1. Little endian:将低序字节存储在起始地址
2. Big endian:将高序字节存储在起始地址
LE little-endian
最符合人的思维的字节序
地址低位存储值的低位
地址高位存储值的高位
怎么讲是最符合人的思维的字节序,是因为从人的第一观感来说
低位值小,就应该放在内存地址小的地方,也即内存地址低位
反之,高位值就应该放在内存地址大的地方,也即内存地址..
套接字本身是有一套心跳保活机制的,不过默认的设置并不像我们一厢情愿的那样有效。在双方TCP套接字建立连接后(即都进入ESTABLISHED状态)并且在两个小时左右上层没有任何数据传输的情况下,这套机制才会被激活。
很多人认为两个小时的时间设置得很不合理。为什么不设置成为10分钟,或者更短的时间?(可以通过SO_KEEPALIVE选项设置。)但是这样做其实并不被推荐。实际上这套机制只是操作系统底层使用的一个被动机制,原理上不应该被上层应用层使用。当系统关闭一个由KEEPALIVE机制检查出来的死连接时,是不会主动通知上层应用的,只..
当调用closesocket关闭套接字时,SO_LINGER将决定系统如何处理残存在套接字发送队列中的数据。处理方式无非两种:丢弃或者将数据继续发送至对端,优雅关闭连接。事实上,SO_LINGER并不被推荐使用,大多数情况下我们推荐使用默认的关闭方式(即下方表格中的第一种情况)。
下方代码段显示linger结构语法,表格为不同参数情况下的套接字行为。
typedef struct linger { u_short l_onoff; //开关,零或者非零 u_short l_linger; &nbs..
有两年时间没有来这里了。。有些后悔。如果这两年时间能好好维护这个博客的话,想必能积累不少专业技术。虽然还是回到了起点,但是心智成熟了很多。一些人一些事没法忘记。虽然还是一人前行,但已不再孤独。