关于socket的阻塞问题

IAMCDYY2003 2004-03-31 01:45:31
从CAsyncSocket继承得到一个socket类,用该类来接收字节,当接收5万多个字节后,出现阻塞现象,接收变得很慢,大约慢了十几倍。不知道怎么解决。。。。。。。。。。
急!!!!!!!!!!!!!!!!
...全文
68 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaohe2008 2004-07-12
  • 打赏
  • 举报
回复
我的程序也是这个问题,有没有什么好的解决办法阿?
5j4m 2004-07-12
  • 打赏
  • 举报
回复
怎么突然又翻出这个帖子来了,IAMCDYY2003 (AIAI) 你的问题解决了吗?
Hotthing 2004-07-12
  • 打赏
  • 举报
回复
顶一下, 很好的问题
swallowcomeback 2004-04-04
  • 打赏
  • 举报
回复
我认为楼主的问题是出在用TCP方式上,因为TCP总是会验证数据是否正确,如果有丢失或数据错误,会让发送方重新发送,而发送方也总是在发送了数据包之后等待对方的回应,以至于导致网络数据的堵塞,而且当数据量大于网络实际流通能力的时候,肯定会造成网络堵塞,而且越来越慢,直到完全瘫痪掉。虽然你说你的Socket是非堵塞,但是只要是TCP,就总是会这样验证数据。
To hugiming:
传输视频流通常都是用UDP方式,即使数据量大于网络的实际流通能力,也只是丢掉一些数据包而不会造成网络瘫痪。另外,数组的申请大一些并没有什么坏处,反而会对某些故意破坏数据传输的企图有一定的预防能力。而且,用数组的方式没有什么不妥,同样可以用指针操作这段内存,如果你说的指针是动态分配的话,那么,运行效率将会比数组低很多。
sharkhuang 2004-04-04
  • 打赏
  • 举报
回复
异步不会阻塞!你应该先spy一下!看那个程序在占用你的cpu.
tcp有算法可以慢发送,防止网络庸塞的.
IAMCDYY2003 2004-04-02
  • 打赏
  • 举报
回复
我用异步socket传输视频流数据都没有这种问题的


你说的有道理,但是我觉得这不是最主要的问题,我的socket是长连接,不知道是不是这个问题,
你能不能把你的代码贴出来,谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
huqiming 2004-04-01
  • 打赏
  • 举报
回复
我用异步socket传输视频流数据都没有这种问题的
huqiming 2004-04-01
  • 打赏
  • 举报
回复
数组不用那么大
如果你再声明大一点,你会发现更慢,
这里你也知需要256字节就够了啊,如果真的会很大,那也不要用数组,改用指针。
ydfok 2004-03-31
  • 打赏
  • 举报
回复
receive死掉了吗?
是不是没有这么多数据呢?
IAMCDYY2003 2004-03-31
  • 打赏
  • 举报
回复
我只是声明一个数组:在OnReceive中这样写
char str[10000]
memset(str,0,sizeof(str));
receive(str,256,0);

诸位觉得是什么问题?
top_hipster 2004-03-31
  • 打赏
  • 举报
回复
接收处理的方法有问题!
IAMCDYY2003 2004-03-31
  • 打赏
  • 举报
回复
不应该的,异步的socket怎么会阻塞呢?
应该是你在内存处理上有些问题?


我不太明白?
B2China 2004-03-31
  • 打赏
  • 举报
回复
调整后面接收数据的数据长度。
huqiming 2004-03-31
  • 打赏
  • 举报
回复
不应该的,异步的socket怎么会阻塞呢?
应该是你在内存处理上有些问题,
或者数据发送端就没有那么快的发送数据
newlife2002_313 2004-03-31
  • 打赏
  • 举报
回复
看看你的程序有没有处理好资源释放的问题.
zhaolaoxin 2004-03-31
  • 打赏
  • 举报
回复
gz

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧