A机给A机的端口发消息,请问怎么发,用什么函数?

liupei418 2012-07-20 02:29:15
UDP通信中, recvfrom函数阻塞了,准备给它发个假消息,让程序继续跑下去,请问有什么办法 啊
...全文
85 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liupei418 2012-07-20
  • 打赏
  • 举报
回复
其实不用发假消息,直接调用shutdown直接,就可以继续跑下去了。
寂寞vs爱神 2012-07-20
  • 打赏
  • 举报
回复
检查sendto函数的参数是否有值,而且要正确。
liupei418 2012-07-20
  • 打赏
  • 举报
回复
阻塞是必须的,因为我要断断续续的发很多消息
liupei418 2012-07-20
  • 打赏
  • 举报
回复
sendto(sockfd,packet,sizeof(packet),0,&servaddr,sizeof(servaddr));
老是出错,
sadgod 2012-07-20
  • 打赏
  • 举报
回复
1、使用select或者epoll iocp之类的代替直接用recvfrom阻塞。
2、创建一个新的udpsocket 给addr 为127.0.0.1 port是a机监听port,发送一个假消息即可,这里要注意,windows下的话,如果不创建新的udp socket而直接用现有的这个socket,有很大概率发送失败,具体原因未知。有经验的大侠可以讨论下这个问题。
liupei418 2012-07-20
  • 打赏
  • 举报
回复
上面所说的recvfrom阻塞是在另一个的线程中,我的目的是让这个线程资源被释放,所以得继续运行到return结束。求大神赐教啊

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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