蛙蛙池塘
人生价值的最好体现就是做好本职工作...
posts - 186,  comments - 1620,  trackbacks - 60
由于大多讲解winsock的代码都是c++的,而winsock只是一些windows api的使用,为了帮助.net程序员深入的理解winsock2,我把.net下同步socket的实现代码拆了出来,简化了一下,大家有空可以调试一下看看。

注意
1、只能跑在win2000以上的系统
2、只支持tcp协议,
3、支持ipv4

改动
1、去掉计数器、日志等逻辑
2、不支持异步,完成端口模型,等有时间了,把完成端口那部分也拆分出来给大家。

为了不让本帖太短,贴一些代码中使用到的winsock函数的原型,大家要想开发高性能的网络程序,就得去深入理解winsock的那几个函数,可以看看《windows网络编程》的第7、8、9章

    OSSOCK

WawaSocket.zip

研究了几天.net socket里对IOCP的封装,发现确实有些复杂,不打算往出拆代码了,自己理解IOCP的代码,用平台调用写一个示例吧。甭管.net再发展,remoting,wcf啥的,底层还是有限的这么几个函数,真的推荐大家好好看看,到时候网络程序出问题了,抓dump,看调用栈也知道到底阻塞到哪个API了,为什么会阻塞。学windbg也就是那几个命令而已,关键你还得了解clr的内部运行机理,win32api,crt,il甚至汇编等。

posted on 2008-07-12 10:50 蛙蛙池塘 阅读(1519) 评论(3)  编辑 收藏 所属分类: 每日随笔

FeedBack:
2008-07-12 14:15 | Simens      
这些API有什么用?.net socket不是都封装好了么?
  回复  引用  查看    
2008-07-12 14:30 | alonesword [未注册用户]
越来越精细了。好!
  回复  引用    
#3楼 [楼主]
2008-07-12 16:57 | 蛙蛙池塘      
@Simens
主要是演示.net是如何用这些api的,让你知其所以然。
  回复  引用  查看    

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-07-12 17:45 编辑过
 

 


残荷听雨,梨花飞雪,落英缤纷时节。晓来谁染枫林醉?点点都是离人泪
活着,就是快乐!自信,就是美丽! 有人爱,就是幸福。
春天来了
但愿野百合也有春天

第一季度的计划



学英语,能用灵格斯看懂英文MSDN
飞信MM网上线
系统看完一本数据库原理的书
值班呢,555 8-10 17:20

<2008年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

与我联系

搜索

 

常用链接

留言簿(42)

我参加的小组

我参与的团队

我的标签

随笔分类

随笔档案

相册

朋友

积分与排名

  • 积分 - 388233
  • 排名 - 54

最新评论

阅读排行榜

评论排行榜

60天内阅读排行