为什么recvfrom有时候阻塞,有时候不阻塞?

canghaixiaoao2 2008-03-19 01:16:11

udpskt=socket(AF_INET,SOCK_DGRAM,0);
ns = sendto( udpskt, (char *)&pkg, sizeof(Quest), 0, (sockaddr *)&to, sizeof(sockaddr));
nr = recvfrom( udpskt, (char *)&rpkg, sizeof(Answer), 0, NULL, NULL);

如果服务器端的接受程序开了,recvfrom可以正常收数据(并且会等待服务器端发送数据过来)。当服务器端没有接收程序在运行时,recvfrom就立刻返回-1,WSAGetLastError()为10054。
没有调用任何setsockopt设置。
请高手指点。
...全文
126 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
TeddyGe 2008-03-19
  • 打赏
  • 举报
回复
int iRecvCnt = recvfrom(pParam->sock,
(char*)&msgRequest,
sizeof(msgRequest),
0,
(SOCKADDR*)&addrClient,
&nLength
);

试一下我的函数的写法

18,356

社区成员

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

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