多进程共用一个UDP端口问题

maikesky 2007-04-11 01:58:35

在BIND socket前,通过调用setsockopt()函数,设置成SO_REUSEADDR,这样端口就可以重用了

但是在客户端socket连接该端口时,只有一个进程响应,怎么才能使所有的监听指定端口的socket进程都响应?

...全文
1679 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
meiZiNick 2008-05-01
  • 打赏
  • 举报
回复
没遇到过这种情况.
poemdreamer 2008-02-29
  • 打赏
  • 举报
回复
你这是先 fork 再 bind , 那么所有那个端口的UDP会 转到最后一个进程,
应该先bind再 fork , 但 那些进程 为了抢数据, recvfrom 时会出现 EAGAIN == errno 的错误,
注意要处理
wanderfox 2007-04-18
  • 打赏
  • 举报
回复
个进程给其它进程发消息?
进程间通信,FIFO,管道;
UDP不用bind和connect,直接sendto
recvfrom就好了啊
maikesky 2007-04-18
  • 打赏
  • 举报
回复
确定是进程,请问一个进程如何给其它进程发消息,在不知道其它进程的端口的前提下?

难道是用一个进程在指定某个的端口段多播?
dxcnjupt 2007-04-17
  • 打赏
  • 举报
回复
让你的进程给其它进程发消息,把数据包一起发过去

另外你确定你指第的是进程而不是线程???
loverx 2007-04-16
  • 打赏
  • 举报
回复
绑定的是同一IP同一端口,相同的协议,只能有一个进程被唤醒
maikesky 2007-04-16
  • 打赏
  • 举报
回复
谢谢楼上,在BIND时绑定的是同一IP同一端口,多播不能解决吧?
loverx 2007-04-13
  • 打赏
  • 举报
回复
多播
maikesky 2007-04-12
  • 打赏
  • 举报
回复
自己顶

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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