C# 退出多播组时通知
我在一个多播组上设置了一个侦听器C# 退出多播组时通知,c#,sockets,udp,multicast,udpclient,C#,Sockets,Udp,Multicast,Udpclient,我在一个多播组上设置了一个侦听器 udpclient.JoinMulticastGroup(multicastaddress, localIpAddress); while(listeing) data = udpclient.receive(ref remoteep); 抱歉,当同一个多播组中的其他成员离开时,我不会得到通知。 我在IGMP协议下的wireshark中看到了它 当成员离开我的c#listener上的多播组时,如何通知我。在C级别上没有API,因此无法在更高级别上实现A
udpclient.JoinMulticastGroup(multicastaddress, localIpAddress);
while(listeing)
data = udpclient.receive(ref remoteep);
抱歉,当同一个多播组中的其他成员离开时,我不会得到通知。
我在IGMP协议下的wireshark中看到了它
当成员离开我的c#listener上的多播组时,如何通知我。在C级别上没有API,因此无法在更高级别上实现API。您不能。在C级没有API,因此无法在更高级别实现API。发送您自己的自定义
leave
message。是的,这样就可以解决一个问题,但是,如果有人插上电缆或终止应用程序,你将无法通过UDP检测到这一点,因为该协议是无连接的。请发送你自己的自定义留言。是的,这样就可以解决一个问题,但是如果有人插上电缆或终止应用程序,你永远无法用UDP检测到这一点,因为协议是无连接的。好吧,也许有个解决办法?如果有人断开了其他人的连接,接收者会得到通知,那就太好了。我会发送一些“ping linke”消息并等待回复,但我发现这个解决方案不太好。@goblins您可以看看一些可靠的多播协议,如TRAM、LRMS等,以获得一些想法。但是多播的基本思想是你不知道或不关心谁是对等的。好吧,也许是一个解决办法?如果有人断开了其他人的连接,接收者会得到通知,那就太好了。我会发送一些“ping linke”消息并等待回复,但我发现这个解决方案不太好。@goblins您可以看看一些可靠的多播协议,如TRAM、LRMS等,以获得一些想法。但是多播的基本思想是,你不知道或不关心谁是对等的。