1,输出errno对应的描述信息建议使用strerror_r, 格式化符号%m,因为它们是线程安全的.
2,调用setsockopt设置更大的socket收发缓冲区不一定起效,可通过getsockopt取回验证.
 内核参数有限制,必须先放松限制才行:
   echo 1232896 > /proc/sys/net/core/wmem_max
   echo 1232896 > /proc/sys/net/core/rmem_max
   参考:http://blog.csdn.net/blade2001/archive/2009/05/12/4171114.aspx
3,g++的-lXXX在编译环境上只有静态库时会静态链接该库
4,堵塞模式socket上调用recv很可能会返回比要求读取的字节数要少,不要和读磁盘文件混淆了。