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的使用最好是在接收端使用,在发送端可不用加入多播组,否则无法双向使用。

总结

一点小尝试。

相关推荐
Drawing stars2 小时前
JAVA后端 前端 大模型应用 学习路线
java·前端·学习
崇山峻岭之间2 小时前
Matlab学习记录33
开发语言·学习·matlab
科技林总3 小时前
【系统分析师】3.5 多处理机系统
学习
SunflowerCoder3 小时前
EF Core + PostgreSQL 配置表设计踩坑记录:从 23505 到 ChangeTracker 冲突
数据库·postgresql·c#·efcore
芯思路4 小时前
STM32开发学习笔记之三【按键】
笔记·stm32·学习
charlie1145141915 小时前
从 0 开始的机器学习——NumPy 线性代数部分
开发语言·人工智能·学习·线性代数·算法·机器学习·numpy
咚咚王者5 小时前
人工智能之核心基础 机器学习 第十二章 半监督学习
人工智能·学习·机器学习
袁气满满~_~5 小时前
Python数据分析学习
开发语言·笔记·python·学习
阿蒙Amon5 小时前
C#每日面试题-常量和只读变量的区别
java·面试·c#
我是唐青枫5 小时前
C#.NET ConcurrentBag<T> 设计原理与使用场景
c#·.net