winsock中的i_o模型探讨

winsock中的i_o模型探讨

ID:34485447

大小:247.69 KB

页数:3页

时间:2019-03-06

winsock中的i_o模型探讨_第1页
winsock中的i_o模型探讨_第2页
winsock中的i_o模型探讨_第3页
资源描述:

《winsock中的i_o模型探讨》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第卷第期计算机工程年月不乞乙户由了··开发研究与设计技术文章编号一刊阅文献标识码中图分类号,中的模型探讨程远忠,杜平安电子科技大学机械电子系,成都弘摘要的迅速发展,编写通信程序成为必然在微软提供了众多的模型中,如何选择合理的模型实现自己的应用程序变得相当重要该文对各种模型进行了较仔细的分析和比较并提出合理的建议关键词套接字异步重登完成端口,,,,一元怪,,,,套,,,,,,两个提出接字模式和套接字模型程支持函数〔概念套接字模式用于决定当一个套接字调用时函⋯,包括锁定和非锁定,,,数的行为而套接字模型描述了

2、应用程⋯序对套接字上进行的操作方法为解决套接字,,有助模式存在的某些限制提出一些模型于通过异步方,,式,一次对一个或几个套接字上的通信加以管理包括一选择、一异步选择一、事件选择一重叠《以及一完成端口等本文对各种套接字模型的特点进行总结,有助于选择更适合自己应用程序的模型模型,,在函数中为一个位掩码包括是中常见的模型其思想便是利用、、、函数实现对的管理,网使用此模型的用户应清楚可能的、、、,,则将自己的几一外带数据几络事件例如我们对读事件进行监视服务质量、、添加到集合,等待函数完成,之后必须判断自叨路由、己

3、的,若是,则表明此是否仍为集合的一部分地,,址列表等各类型可按运算应用程序可读应立即从它上面读取数据实现方法如下,在一个套接字上调用之后会在对应口,网络,’,的窗例程中以消息的形式接受事件通知,’,,,,了一可按自己的要求匹配各个网络事件该模型比较简单但它必口,须要有个窗作消息循环特别适合编程模型⋯,花该模型和类似的是,一也许应,,,,,用程序对进行轮询出于性能方面的考允许应用程序在一个或多个套接字上接收以事件为基础的事虑,应避免这样提供了宏操作对进行处理,、,‘、,‘件通知其最主要的差别在于网络事件会投

4、递到一个事件对与检查几一,而非口应象句柄投递到一个窗用中应首先创造一个事件、,等对象可得到一个事件句柄,然后将其与某个套接字关联在一一异步模型利用该模型,应用程序可在一个套接字上接收以作者简介程远忠,男,硕士,主要研究方向计算机网消息为基础的,网络事件通知在应用程序中首先,络及其应用杜平安教授须口,口用函数创建窗再为该窗创建一个例一一收稿日期一一’,同时注册自起己感兴趣的网络事件实现方法如下云认⋯,一⋯,,皿,,,一·⋯长⋯卜、】,,模型。完成端口字模型是最新最复杂的一卜毒⋯种模型若要一个应用程序同时管理

5、多个套接字,使用》这种模型可得到最佳性能其思想是希望每个处理器各自负值得注意的是创建的事件有已传信和,口,,责一个线程的运行为完成端服务避免过于频繁的线程以末传信两种工作模式及两种工作状态,,场景”切换,消耗系统,时间做到这点应调用函数人工重设和自动重设,一,最开始在一种的工作状态中并,用一种模式来创建事件句柄随着网络事件触,发,工作状态便从了与一个套接字关联在一起的事件对象转变成由于事件对象在一模式其中旧为定义在一个端口上的,,,,应线程数量理想是设置成数量可以通过调用中创建的所以在完成一个请求处理后用

6、程序需负责将工作状态从已更改为知道造成网络一肠函数取得有多少个其中,事件的套接字后就可用函数调查发是指要与某个特定套接字句柄关联在一起的”卜”,应生了什么网络事件并进行相应的处理单句柄数据在这个参数中用程序一模型可保存与一个套接字对应的任意类型的信息可采用三重方一重叠模型可使应用程序得到更好法完成的性能,其,一工作线程与完成端口原理是让应用程序使用一个重叠的数据结构成功创建一个完成端口后,便可开始将套接字与对象关次投递一个或多个请求使用该模型时应先用””,这个标志创造套接字,成功创联到一起关联之前须创建一

7、个或几个工作线程以便,同时将一个本地接口绑,在请求投递给完成端口对象后为完成端口服务造一个套接字定到一起便可进行重叠操作管理重叠请求”卜的方法有两种等待事件对象通【,,,乡,,,,完成”知和例程等待事件对象通知,,该方法同模型相似只是在夏,,,一函数完成后再调用一,,一,一一函数考察重叠调用是否成功若成口,则可在该端口功则表示该端操作完成进行进一步的操作实现方法如下完成端口和重登口,、厂将套接字句柄与一个完成端关联在一起后以套接字,,‘、口、句柄为基础发送或接收请求开始对端请求处理此,双花时,需要应,用程

8、序负责在以后的某个时间通过、,卜结构来接受调用的结果可用胜卜获取排队完成状态函数让一口,,个或多个工作线程在完成端上等待‘,,单句柄数据和单操作数据一个工作线程从一这个,完成例程调用完成后在一奴或一一一,参数,,”,,完成例程是应用程序用来管理完成的重叠请求的中会包含一些必要的套接字信息利用这些信息可通过另一种方法其实也就是一些函数它首先传递一个重叠完成端口继续在一个套接字上的处理这些信息可获取请求,在重叠请求完成时由系统调用

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。