IO完成端口简单案例,很简单,以看就会

时间:2012-04-23 16:19:46
【文件属性】:

文件名称:IO完成端口简单案例,很简单,以看就会

文件大小:56KB

文件格式:RAR

更新时间:2012-04-23 16:19:46

完成端口

一个很简单的完成端口案例,大家可以一起探讨。这里配合客户端测试。在TCP的协议下,完成端口的模型基本上是以下这种模式: 主线程 | CreateIoCompletionPort | CreateThread ————————— 完成端口线程 | | |---- While(TRUE) While(TRUE)----------| | | | | | Accept |------GetQueuedCompletionStatus() | | | | | | | CreateIoCompletionPort | WsaRev/WsaSend-------| | | | | |----WsaRev/WsaSend |------------ Windows系统 | | Windows系统 --------- 主线程主要负责接受客户端的连接,在侦听到客户端的连接以后,将异步接受数据,由操作系统通知 GetQueuedCompletionStatus函数获取操作。在这里Accpet和GetQueuedCompletionStatus函数都是处于阻塞模式。这种TCP模式的完成端口比较容易理解,但是在UDP协议下的实现就比较难于考虑,他没有Accept的阻塞,主线程比较难于处理。如果没有这个主线程,WsaRecfrom函数又不知道放在哪里才能够通知GetQueuedCompletionStatus得到相应的操作方式。因此,希望大家能够帮我考虑一下,这种UDP下的完成端口该怎么安排他的结构?


【文件预览】:
TestClt
----res()
--------TestClt.rc2(399B)
--------TestClt.ico(1KB)
----TestClt.clw(1KB)
----TestClt.rc(5KB)
----TestClt.aps(35KB)
----TestClt.dsw(539B)
----TestClt.ncb(49KB)
----TestClt.opt(48KB)
----TestClt.plg(248B)
----StdAfx.cpp(209B)
----resource.h(731B)
----TestCltDlg.h(1KB)
----StdAfx.h(1KB)
----TestClt.dsp(4KB)
----TestCltDlg.cpp(5KB)
----Debug()
----TestClt.h(1KB)
----TestClt.cpp(2KB)
----ReadMe.txt(4KB)
Test.rar

网友评论

  • 谢谢学习了
  • 感谢分享.........
  • 小下载的格式不对呀,在下一次试试
  • 可以参考,再加点说明就好了。
  • 虽然是vc6.0版本,用高版本还是可以打开的,代码简单实用,多谢了!
  • 看了一遍,挺不错的。但是实用性不是太好。
  • 不错 很好用~
  • 不错 很好用~
  • C语言的,咋不说清楚
  • 不错 很好用~
  • 界面卡在那里动不了,