C#学习系列之UDP同端口收发问题

C#学习系列之UDP同端口收发问题


前言

想测试自己的程序问题,建立了两个UDP程序,一个往端口中接到数就传出去,另一个从这个端口接数据来解析。

出现的问题是

每次打开端口,另一个程序就无法接入。


解决办法

最后通过调试发现,当两个程序都使用一下句子,只要添加多播组就会出现问题。

csharp 复制代码
sendClient = new UdpClient(XXX);            sendClient.JoinMulticastGroup(IPAddress.Parse("xxx"));

替换方案

csharp 复制代码
UdpClient sendClient = new UdpClient();
IPEndPoint multicast = new IPEndPoint(IPAddress.Parse("XXX"), XXX);

只要简单声明一下,不加入多播组就可以了。

关于JoinMulticastGroup

通过来回读取端口数据与调试发现,JoinMulticastGroup的使用最好是在接收端使用,在发送端可不用加入多播组,否则无法双向使用。

总结

一点小尝试。

相关推荐
骑鱼过海的猫12316 小时前
【git】git学习记录
git·学习·elasticsearch
weixin_4093831216 小时前
简单四方向a*寻路学习记录3 将角色世界坐标传给地图数组 计算上下左右四个格子到目的地的f 选择最小的f方向
学习·a星
学编程的闹钟16 小时前
浅谈VMProtectV2.13.8的IAT修复
学习
盐焗西兰花16 小时前
鸿蒙学习实战之路-多端交互最佳实践
学习·交互·harmonyos
AI绘画哇哒哒16 小时前
AI 智能体长期记忆系统架构设计与落地实践
人工智能·学习·算法·ai·程序员·产品经理·转行
武藤一雄16 小时前
C#:Linq大赏
windows·后端·microsoft·c#·.net·.netcore·linq
@年年17 小时前
C#十字线小工具
c#
JH灰色17 小时前
【大模型】学习路线
学习
林林宋18 小时前
nvidia&cuda&gpu 关系学习
学习
学编程的闹钟18 小时前
102【php开发准备】
学习