CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

windows socket 巨难问题

楼主scklotz(晓春)2001-02-18 11:34:00 在 VC/MFC / 基础类 提问

我使用winsock很长时间了,现在做的是基于client/server,server支持多个连接。理想的socket通讯没问题,可残酷的现实总是让人恼火。网络I/O问题实在难(非阻塞的socket,socket窗口,单线程):  
  1。CAsyncSocket::里的Send()什么情况返回SOCKET_ERROR,为什么会失败,如何解决  
  2。响应OnReceive里的Receive()函数有时候为什么也会失败,如何解决?  
  请大虾们详细讨论,甚至可以考虑到Windows对tcp/ip的实现机制。另外,欢迎大虾们讲解通讯中认为关键的部分。  
  还有小问题:就是我的可用分那么多,怎么我只能给这个问题加79分? 问题点数:79、回复次数:5Top

1 楼redoak2000(小舟一叶)回复于 2001-02-18 11:46:00 得分 0

关注。Top

2 楼Un1()回复于 2001-02-18 11:53:00 得分 9

我看你还是改用Mswinsck.ocx吧。Top

3 楼houyb_vc(逍遥)回复于 2001-02-18 14:35:00 得分 10

试着直接用API的socket调用,不使用CAsyncSocket类Top

4 楼meteorshower(流星宇)回复于 2001-02-18 15:05:00 得分 30

建议阅读   windows网络编程   机械工业出版社  
   
  i/o模型可以选择五中:  
  select模型  
  AnsyncSelect异步选择  
  Event事件模型  
  还有一种记不清了  
  完成端口  
   
  直接使用Api控制比较方便,并且也容易查错误  
  Top

5 楼E()回复于 2001-02-18 15:11:00 得分 30

send()时,对方接收窗口(rwnd)为零并且本方发送缓冲区满,则send   error  
  recv()时,若缓冲区大小小于数据的大小,也会返回error。但数据还是接收到了。  
                        其他线程正在recv(),recv()会失败。,。。。  
   
  Top

相关问题

  • ·········JAVA SOCKET 巨难问题········
  • Windows Socket问题
  • Socket难题
  • socket 高难问题
  • socket??
  • socket
  • socket
  • socket
  • socket ????????????
  • Socket???

关键词

  • socket
  • 模型
  • 问题
  • 使用
  • 会失败
  • send

得分解答快速导航

  • 帖主:scklotz
  • Un1
  • houyb_vc
  • meteorshower
  • E

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo