当前位置: 首页 > news >正文

桂阳局网站建设方案专门教人做点心的网站

桂阳局网站建设方案,专门教人做点心的网站,网站备案新增域名,上海行业门户网站建设应用select#xff1a; 首先设置一个lfd绑定服务端地址结构#xff0c;用于监听新的连接。select函数调用#xff0c;用于对整个fd数组进行监听#xff0c;该数组最大限制1024#xff0c;通过遍历#xff0c;来确定是哪个fd有变化#xff1a; 1.如果是lfd#xff1a;那么可…select 首先设置一个lfd绑定服务端地址结构用于监听新的连接。select函数调用用于对整个fd数组进行监听该数组最大限制1024通过遍历来确定是哪个fd有变化 1.如果是lfd那么可能是新的连接进来就要调用accept阻塞监听获得这个新的连接将fd加入到数组中 2.其他fd有可能是需要断开连接也有可能是要有数据传输。 1.#include stdio.h 2.#include stdlib.h 3.#include unistd.h 4.#include string.h 5.#include arpa/inet.h 6.#include ctype.h 7. 8.#include wrap.h 9. 10.#define SERV_PORT 6666 11. 12.int main(int argc, char *argv[]) 13.{ 14. int i, j, n, nready; 15. 16. int maxfd 0; 17. 18. int listenfd, connfd; 19. 20. char buf[BUFSIZ]; /* #define INET_ADDRSTRLEN 16 */ 21. 22. struct sockaddr_in clie_addr, serv_addr; 23. socklen_t clie_addr_len; 24. 25. listenfd Socket(AF_INET, SOCK_STREAM, 0); 26. int opt 1; 27. setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, opt, sizeof(opt)); 28. bzero(serv_addr, sizeof(serv_addr)); 29. serv_addr.sin_family AF_INET; 30. serv_addr.sin_addr.s_addr htonl(INADDR_ANY); 31. serv_addr.sin_port htons(SERV_PORT); 32. Bind(listenfd, (struct sockaddr *)serv_addr, sizeof(serv_addr)); 33. Listen(listenfd, 128); 34. 35. 36. fd_set rset, allset; /* rset 读事件文件描述符集合 allset用来暂存 */ 37. 38. maxfd listenfd; 39. 40. FD_ZERO(allset); 41. FD_SET(listenfd, allset); /* 构造select监控文件描述符集 */ 42. 43. while (1) { 44. rset allset; /* 每次循环时都从新设置select监控信号集 */ 45. nready select(maxfd1, rset, NULL, NULL, NULL); 46. if (nready 0) 47. perr_exit(select error); 48. 49. if (FD_ISSET(listenfd, rset)) { /* 说明有新的客户端链接请求 */ 50. 51. clie_addr_len sizeof(clie_addr); 52. connfd Accept(listenfd, (struct sockaddr *)clie_addr, clie_addr_len); /* Accept 不会阻塞因为已经知道要有连接了所以直接连接 */ 53. 54. FD_SET(connfd, allset); /* 向监控文件描述符集合allset添加新的文件描述符connfd */ 55. 56. if (maxfd connfd) 57. maxfd connfd; 58. 59. if (0 --nready) /* 只有listenfd有事件, 后续的 for 不需执行 */ 60. continue; 61. } 62. 63. for (i listenfd1; i maxfd; i) { /* 检测哪个clients 有数据就绪 */ 64. 65. if (FD_ISSET(i, rset)) { 66. 67. if ((n Read(i, buf, sizeof(buf))) 0) { /* 当client关闭链接时,服务器端也关闭对应链接 */ 68. Close(i); 69. FD_CLR(i, allset); /* 解除select对此文件描述符的监控 */ 70. 71. } else if (n 0) { 72. 73. for (j 0; j n; j) 74. buf[j] toupper(buf[j]); 75. Write(i, buf, n); 76. } 77. } 78. } 79. } 80. 81. Close(listenfd); 82. 83. return 0;
http://www.yutouwan.com/news/235740/

相关文章:

  • 这几年做那些网站致富郑州seo线上推广技术
  • 中山企业做网站莱芜吧莱芜贴吧
  • 旅行社手机网站建设成常见网络营销工具
  • 海报模板免费下载网站烟台百度网站建设
  • 潍坊那个公司做网站比较好WordPress使用微博外链
  • 深圳企业建站设计公司服务器网站路径问题
  • 网站建设费记入科目沧州网站制作多少钱
  • 制作网站需要哪些成本wordpress无法搜索
  • 发布程序后网站有很多seo难不难学
  • 做网站的素材图片做兼职的网站 知乎
  • 电子商务网站建设的大纲工业和信息化部工业文化发展中心
  • 清河做网站哪儿好中国做的最好的网站建设公司
  • 代发货网站建设重庆市建设工程信息网官网造价
  • 焦作会计做继续教育在哪个网站珠宝首饰网站源码
  • 团购网站自个做折页在线设计平台
  • 商丘微网站绍兴优化公司
  • 免费杂志排版软件深圳seo优化服务
  • 做网站很赚钱泉州网上房地产
  • 做视频网站用什么格式互联网创业项目
  • 怎么做类似返利网的网站网站建设情况检查报告
  • 前端做用vue做后台多还是做网站多百度平台商户电话号码
  • 安徽质量工程建设网站推广平台有哪些游戏
  • 福建省建设注册管理中心网站wordpress 短视频
  • 网站建设欧美风格三亚做网站多少钱一平方
  • 做app的网站有哪些功能吗莱芜上汽大众4s店
  • 那个网站做的好广州wap网站制作
  • 响应式网站移动端排名阳性不一定是新冠
  • 团购产品 网站建设优秀的网页设计案例
  • 手机百度 网站提交如何做好一个百度竞价网站
  • 上饶市建设局网站百代宜昌网站建设哪家好