博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Windsock套接字I/O模型学习 --- 第一章
阅读量:4570 次
发布时间:2019-06-08

本文共 424 字,大约阅读时间需要 1 分钟。

1. I/O模型共有以下几种:

  • 阻塞(blocking)模型
  • 选择(select)模型
  • WSAAsyncSelect模型
  • WSAEventSelect模型
  • 重叠(overlapped)模型
  • 完成端口(completion port)模型

2. 阻塞模式

套接字创建时,默认工作在阻塞模式下.阻塞套接字的好处是使用简单,但是当需要处理多个套接字连接时,就必须创建多个线程,即典型的一个连接使用一个线程的问题,这给编程带来了许多不便。所以实际开发中使用最多的还是非阻塞模式。

3. 非阻塞模式

调用 ioctlsocket 函数显式地让套接字工作在非阻塞模式下

u_long ul = 1;SOCKET s = socket(AF_INET, SOCK_STREAM, 0);ioctlsocket(s, FIONBIO, (u_long *)&ul);

转载于:https://www.cnblogs.com/zjzyh/p/5365116.html

你可能感兴趣的文章
Java开源工具 网站开发工具清单
查看>>
POJ 1442 Black Box
查看>>
php array_multisort对数据库结果多个字段进行排序
查看>>
关于大型网站技术演进的思考(十六)--网站静态化处理—前后端分离—下(8)...
查看>>
Python中dict详解
查看>>
[LeetCode][JavaScript]House Robber
查看>>
java经典算法四十题
查看>>
(转载) MTK flash
查看>>
Python 序列化之json、pickle
查看>>
python3 多线程笔记
查看>>
无尽的控件-GridView复合表头
查看>>
Luogu4726 【模板】多项式指数函数(NTT+多项式求逆)
查看>>
e3mall商城的归纳总结2之认识dubbo、zookeeper
查看>>
hdu 4507 吉哥系列故事——恨7不成妻
查看>>
表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列
查看>>
锡瓦塔内霍 墨西哥 / 巴克斯顿 /
查看>>
Direct3D 索引缓存
查看>>
Eclipse开发环境的配置
查看>>
Java集合框架的学习
查看>>
P4783 【模板】矩阵求逆
查看>>