社区
网络编程
帖子详情
一个关于FD_CLOSE的问题
flyhigh
2007-05-09 02:16:37
我利用Socket做文件传输,一个传输任务一个线程。
问题是如果我多个任务一起工作的时候,经常发送端发送完成并关闭Socket后,接收方会收到FD_CLOSE,但是数据却还没有接收完成。
百思不得其解,请各位指点!谢谢!
...全文
509
8
打赏
收藏
一个关于FD_CLOSE的问题
我利用Socket做文件传输,一个传输任务一个线程。 问题是如果我多个任务一起工作的时候,经常发送端发送完成并关闭Socket后,接收方会收到FD_CLOSE,但是数据却还没有接收完成。 百思不得其解,请各位指点!谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flyhigh
2007-05-13
打赏
举报
回复
在发送端发送完成后调用了closesocket
多个任务就是多个线程同时传送多个文件。可能同时接收和发送。
DentistryDoctor
2007-05-13
打赏
举报
回复
是不是发送端调用了closesocket?
多个任务一起工作是什么含义?同时传多个文件,没有多线程吧?
flyhigh
2007-05-13
打赏
举报
回复
主动接收?
文件传输协议已经有了,而且速度也还行。
CathySun118
2007-05-12
打赏
举报
回复
1.改为主动接收,就不会有这个问题
flyhigh
2007-05-12
打赏
举报
回复
我就是用的消息机制。
用结束标志等显然不行:因为网络可能中断。而且我已经有了数据长度。
Elysium
2007-05-09
打赏
举报
回复
用消息机制,或者自己控制数据结束完后再close
su47flying
2007-05-09
打赏
举报
回复
1.每次发送完,你可以在发送端发送一个结束命令,接受端根据命令关闭socket.
2.在接收端根据你传送的文件的大小判断是否已经接受完毕。然后关闭socket.
laofang
2007-05-09
打赏
举报
回复
sleep a while then close the socket, since the packet may delay a while on the network
windows网络编程之tcp/ip
适用人群 windows网络编程的初学者 课程概述 课程简介: 这部教程是windows网络编程课程的第一部分课程:tcp/ip协议 后续会有第二部分课程:udp/ip协议以及第三部分课程http协议的课程发布。希望能够帮助到大家。 ...
Windows Socket
FD
_READ
FD
_WRITE
FD
_
CLOSE
只有在三种条件下,才会发出
FD
_WRITE通知: ■ 使用connect或WSAConnect,
一个
套接字首次建立了连接。 ■ 使用accept或WSAAccept,套接字被接受以后。...因此,作为
一个
应用程序,自收到首条
FD
_WRITE消息开始,便
windows socket编程(服务端频繁的执行
FD
_
CLOSE
)
一个
web客户端程序连服务器,在线程里面用WSAEventSelect来选择网络事件,实际运行过程中发现客户端对服务器的指令有时根本没反映,(不是每次,只是有时候,但出现频率还是比较高的),我用网络抓包及打印日志,...
在WSAASyncSelect模式中频繁收到
FD
_
CLOSE
事件的解决方法
最近在
一个
项目中写
一个
网络客户端,当开
一个
进程时连不同的服务器是是正常的,开两个进程时,总有
一个
会频繁收到
FD
_
CLOSE
事件,造成频繁掉线的现象! 经大半天的程序排查,发现是在网络初始化函数的版本的选择上的
问题
,...
iErrorCode[
FD
_
CLOSE
_BIT]==10053 错误
else if(netEvents.iErrorCode[
FD
_
CLOSE
_BIT]==10053)//客户端非法关闭 { ::WSA
Close
Event(objtemp.sEvent); ptr->PeerShutDownSocket(objtemp.s); } 杭州-(__少(26062281) 14:11:47 #先说
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章