在c#中关于udp实现可靠地传输(数据包的分组发送) 这篇文章中我介绍了关于UDP分组发送数据的方法,但是只给出了几个类,但是具体怎么使用我还没有介绍。
其实使用方法很简单。
服务端使用
UDPThread server; server = new UDPThread(6666); server.PackageReceived += MessageReceived; void MessageReceived(object sender, PackageEventArgs e) { if (e.udpPackage != null) { AddServerMessage("收到包 编号:" + e.udpPackage.sequence + "位移:" + e.udpPackage.index+ "总共:" + e.udpPackage.total); i++; e.udpPackage.destinationIP = e.RemoteIP; server.AsyncSendPacket(e.udpPackage); AddServerMessage("转发包" + e.udpPackage.sequence+"位移:" + e.udpPackage.index); } }
客户端的话使用
client= new UDPThread("192.168.1.100", 6666); client.PackageReceived += MessageReceived; void MessageReceived(object sender, PackageEventArgs e) { if (e.udpPackage != null) { AddServerMessage("收到从服务器发来的包 编号:" + e.udpPackage.sequence + "位移:" + e.udpPackage.index + "总共:" + e.udpPackage.total); } }
只需要添加数据收到事件,就可以简单的实现数据分包发送