_07多连接之select模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:www.bcdaren.com 联系QQ:1250121864 QQ交流群 :49759272 联系电话:0512-57882866
1、回顾多线程解决方案 占用系统资源太严重,客户端数量上升到一定程度,容易 造成系统瘫痪。 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 1、回顾多线程解决方案 占用系统资源太严重,客户端数量上升到一定程度,容易 造成系统瘫痪。 有没有一种模型既能处理多用户又能节省系统资源呢???
2、select模型 概念:所谓select模型,就是调用了select()这个函数罢了 int select( int nfds, 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 2、select模型 概念:所谓select模型,就是调用了select()这个函数罢了 int select( int nfds, fd_set FAR *readfds, fd_set FAR *writefds, fd_set FAR *exceptfds, const struct timeval FAR *timeout ); 一个有趣的问题:为何起了这么个函数名?
3、select模型的本质 可读检测池 可写检测池 select 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 3、select模型的本质 可读检测池 hsock1 hsock2 hsock3 hsock4 可写检测池 hsock1 hsock2 hsock3 hsock4 select
4、select模型的副作用 它会把“没用的”从池子里踢出去,换句话说就是,select每次成功 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 4、select模型的副作用 它会把“没用的”从池子里踢出去,换句话说就是,select每次成功 返回后,池子里只会剩下满足条件的那些个套接字。
5、select模型的编程方法 客户端:没有变化 服务器端:在前一节课的多线程的模型上稍微做一点点变化即可; 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 5、select模型的编程方法 客户端:没有变化 服务器端:在前一节课的多线程的模型上稍微做一点点变化即可;
昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 6、课后练习 见线上班