- 相關推薦
Java多播套接字的方法介紹
播數(shù)據(jù)報套接字類用于發(fā)送和接收 IP 多播包。MulticastSocket 是一種 (UDP) DatagramSocket,它具有加入 Internet 上其他多播主機的“組”的附加功能。以下是小編為大家搜索整理的Java多播套接字的方法,希望能給大家?guī)韼椭?更多精彩內容請及時關注我們考試網(wǎng)!
多播組通過 D 類 IP 地址和標準 UDP 端口號指定。D 類 IP 地址在 224.0.0.0 和 239.255.255.255 的范圍內(包括兩者)。地址 224.0.0.0 被保留,不應使用。
方法
可以通過首先使用所需端口創(chuàng)建 MulticastSocket,然后調用 joinGroup(InetAddress groupAddr) 方法來加入多播組:
// join a Multicast group and send the group salutations
...
String msg = "Hello";
InetAddress group = InetAddress.getByName("228.5.6.7");
MulticastSocket s = new MulticastSocket(6789);
s.joinGroup(group);
DatagramPacket hi = new DatagramPacket(msg.getBytes(), msg.length(),
group, 6789);
s.send(hi);
// get their responses!
byte[] buf = new byte[1000];
DatagramPacket recv = new DatagramPacket(buf, buf.length);
s.receive(recv);
...
// OK, Im done talking - leave the group...
s.leaveGroup(group);
將消息發(fā)送到多播組時,該主機和端口的所有預定接收者都將接收到消息(在數(shù)據(jù)包的生存時間范圍內,請參閱下文)。套接字不必成為多播組的成員即可向其發(fā)送消息。
當套接字預定多播組/端口時,它將接收由該組/端口的其他主機發(fā)送的數(shù)據(jù)報,像該組和端口的所有其他成員一樣。套接字通過 leaveGroup(InetAddress addr) 方法放棄組中的成員資格。多個 MulticastSocket 可以同時預定多播組和端口,并且都會接收到組數(shù)據(jù)報。
同時,不允許 applet 使用多播套接字
【Java多播套接字的方法介紹】相關文章:
Java多播套接字的方法08-10
講解Java的Socket網(wǎng)絡編程的多播與廣播實現(xiàn)09-03
java中定義常量的方法及介紹08-27
Java數(shù)組的基本操作方法介紹08-14
java虛方法09-21
java入門方法10-13
java調用的方法09-04
java方法重寫的方法分析09-04
Java實現(xiàn)多繼承的實例07-18