摘要: 使用select来管理IOselect确定一个或者多个套接字状态。int select(int nfds;fd_set* readfds; //可读性fs_set* writefds; // 可写性fd_set* exceptfds; //错误const struct timeval* timeout //等待时间);函数调用成功,返回 套接字数量总和。超过时间限制,返回0;失败返回 SOCKET_ERROR. 阅读全文
posted @ 2012-10-09 23:48 xingoo 阅读(220) 评论(0) 推荐(0) 编辑
摘要: I/O模型6种:阻塞模型,选择模型,WSAAsyncSelect模型,WSAEventSelect模型,重叠模型,完成端口模型阻塞模式: 执行IO的winsock调用一直到操作完成才返回 好处:使用简单,当处理多个套接字连接时,必须创建多个线程。典型的一个连接使用一个线程非阻塞模式下: winsock函数会立即返回 调用ioctlsocket函数显示让套接字工作在非阻塞模式下:u_long ul =1;SOCKET s=socket(AF_INET,SOCK_STREAM,0);ioctlsocket(s,FIONBIO,(u_long*)&ul);调用失败:WSAEWOULDBLOC 阅读全文
posted @ 2012-10-09 23:44 xingoo 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 1 抽象过程2 对象接口3 实现隐藏4 重用5 继承:重用接口6 多态性:互换对象7 创建销毁对象8 异常处理:应对错误9 分析设计:制定计划,做什么(需求分析),如何设计(类职责协同CRC),创建核心,迭代用例,进化,计划回报10 极限编程XP :先写测试,结对编程第二章:语言翻译过程:解释器,编译器,连接器分段编译工具:声明,定义头文件:<>:按照系统目录开始查找 " "先查找当前文件目录,查找不到,再按<>方式查找名字空间:为避免函数名标示符冲突, namespace关键字 using 使用命名空间关键字 std标准命名空间#include & 阅读全文
posted @ 2012-10-09 19:41 xingoo 阅读(182) 评论(0) 推荐(0) 编辑