MulticastSocket Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen.
[Android.Runtime.Register("java/net/MulticastSocket", DoNotGenerateAcw=true)]
public class MulticastSocket : Java.Net.DatagramSocket
[<Android.Runtime.Register("java/net/MulticastSocket", DoNotGenerateAcw=true)>]
type MulticastSocket = class
inherit DatagramSocket
- Vererbung
- Attribute
Hinweise
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. Ein MulticastSocket ist ein (UDP)-DatagramSocket mit zusätzlichen Funktionen für den Beitritt zu "Gruppen" anderer Multicasthosts im Internet.
Eine Multicastgruppe wird durch eine IP-Adresse der Klasse D und eine standardmäßige UDP-Portnummer angegeben. Klassen D-IP-Adressen befinden sich im Bereich 224.0.0.0 bis 239.255.255.255einschließlich. Die Adresse 224.0.0.0 ist reserviert und sollte nicht verwendet werden.
Man würde einer Multicastgruppe beitreten, indem zuerst ein MulticastSocket mit dem gewünschten Port erstellt wird, und dann die joinGroup(InetAddress groupAddr) Methode aufrufen:
// 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);
byte[] bytes = msg.getBytes(StandardCharsets.UTF_8);
DatagramPacket hi = new DatagramPacket(bytes, bytes.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, I'm done talking - leave the group...
s.leaveGroup(group);
Wenn eine Nachricht an eine Multicastgruppe gesendet wird, <empfangen B>alle</B-Empfänger> für diesen Host und Port die Nachricht (innerhalb des Zeit-zu-Live-Bereichs des Pakets siehe unten). Der Socket muss kein Mitglied der Multicastgruppe sein, um Nachrichten an sie zu senden.
Wenn ein Socket eine Multicastgruppe/einen Multicast-Port abonniert, empfängt er Datagramme, die von anderen Hosts an die Gruppe/den Port gesendet werden, ebenso wie alle anderen Mitglieder der Gruppe und des Ports. Ein Socket löscht die Mitgliedschaft in einer Gruppe durch die leaveGroup(InetAddress addr)-Methode. <B> Mehrere MulticastSocket-Dateien<> können gleichzeitig eine Multicastgruppe und einen Port abonnieren, und sie empfangen alle Gruppendatengramme.
Derzeit dürfen Applets keine Multicast-Sockets verwenden.
In 1.1 hinzugefügt.
Java Dokumentation für java.net.MulticastSocket.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| MulticastSocket() |
Erstellen Sie einen Multicastsocket. |
| MulticastSocket(Int32) |
Erstellen Sie einen Multicastsocket, und binden Sie ihn an einen bestimmten Port. |
| MulticastSocket(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
| MulticastSocket(SocketAddress) |
Erstellen Sie ein MulticastSocket, das an die angegebene Socketadresse gebunden ist. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Broadcast |
Testet, ob SO_BROADCAST aktiviert ist. -or- Enable/disable SO_BROADCAST. (Geerbt von DatagramSocket) |
| Channel |
Gibt das eindeutige |
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| InetAddress |
Gibt die Adresse zurück, mit der dieser Socket verbunden ist. (Geerbt von DatagramSocket) |
| Interface |
Rufen Sie die Adresse der Netzwerkschnittstelle ab, die für Multicastpakete verwendet wird. -oder- Legen Sie die von Methoden verwendete Multicast-Netzwerkschnittstelle fest, deren Verhalten vom Wert der Netzwerkschnittstelle betroffen wäre. |
| IsBound |
Gibt den Bindungsstatus des Sockets zurück. (Geerbt von DatagramSocket) |
| IsClosed |
Gibt zurück, ob der Socket geschlossen ist oder nicht. (Geerbt von DatagramSocket) |
| IsConnected |
Gibt den Verbindungsstatus des Sockets zurück. (Geerbt von DatagramSocket) |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| JniPeerMembers |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. |
| LocalAddress |
Ruft die lokale Adresse ab, an die der Socket gebunden ist. (Geerbt von DatagramSocket) |
| LocalPort |
Gibt die Portnummer auf dem lokalen Host zurück, an den dieser Socket gebunden ist. (Geerbt von DatagramSocket) |
| LocalSocketAddress |
Gibt die Adresse des Endpunkts zurück, an den dieser Socket gebunden ist. (Geerbt von DatagramSocket) |
| LoopbackMode |
Rufen Sie die Einstellung für lokale Loopbacks von Multicast-Datagrammen ab. -or- Disable/Enable local loopback of multicast datagrams The option is used by the platform's networking code as a hint for setting whether multicast data will be looped back to the local socket. |
| NetworkInterface |
Rufen Sie den Multicast-Netzwerkschnittstellensatz ab. -oder- Geben Sie die Netzwerkschnittstelle für ausgehende Multicast-Datagramme an, die an diesem Socket gesendet werden. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| Port |
Gibt die Portnummer zurück, mit der dieser Socket verbunden ist. (Geerbt von DatagramSocket) |
| ReceiveBufferSize |
Rufen Sie den Wert der Option SO_RCVBUF für diese |
| RemoteSocketAddress |
Gibt die Adresse des Endpunkts zurück, mit dem dieser Socket verbunden ist oder |
| ReuseAddress |
Testet, ob SO_REUSEADDR aktiviert ist. - oder- Aktivieren/Deaktivieren Der SO_REUSEADDR Socketoption. (Geerbt von DatagramSocket) |
| SendBufferSize |
Rufen Sie den Wert der Option SO_SNDBUF für diese |
| SoTimeout |
Rufen Sie die Einstellung für SO_TIMEOUT ab. -or- Enable/disable SO_TIMEOUT with the specified timeout, in Millisekunden. (Geerbt von DatagramSocket) |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| TimeToLive |
Rufen Sie die Standardzeit-zu-Live für Multicastpakete ab, die auf dem Socket gesendet werden. -oder- Legen Sie die Standardzeit für Multicastpakete fest, die auf diese |
| TrafficClass |
Ruft die Datenverkehrsklasse oder den Diensttyp im IP-Datagrammheader für Pakete ab, die von diesem DatagramSocket gesendet werden. -oder- Legt die Datenverkehrsklasse oder den Dienst-Oktett im IP-Datagrammheader für Datengramme fest, die von diesem DatagramSocket gesendet werden. (Geerbt von DatagramSocket) |
| TTL |
Veraltet.
Rufen Sie die Standardzeit-zu-Live für Multicastpakete ab, die auf dem Socket gesendet werden. -oder- Legen Sie die Standardzeit für Multicastpakete fest, die auf diese |
Methoden
| Name | Beschreibung |
|---|---|
| Bind(SocketAddress) |
Bindet dieses DatagramSocket an eine bestimmte Adresse und einen bestimmten Port. (Geerbt von DatagramSocket) |
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Close() |
Schließt diesen Datagrammsocket. (Geerbt von DatagramSocket) |
| Connect(InetAddress, Int32) |
Verbindet den Socket mit einer Remoteadresse für diesen Socket. (Geerbt von DatagramSocket) |
| Connect(SocketAddress) |
Verbindet diesen Socket mit einer Remote-Socketadresse (IP-Adresse + Portnummer). (Geerbt von DatagramSocket) |
| ConnectAsync(InetAddress, Int32) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von DatagramSocket) |
| ConnectAsync(SocketAddress) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von DatagramSocket) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| Disconnect() |
Trennt den Socket. (Geerbt von DatagramSocket) |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| Equals(Object) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| GetOption(ISocketOption) |
Gibt den Wert einer Socketoption zurück. (Geerbt von DatagramSocket) |
| JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| JoinGroup(InetAddress) |
Verknüpft eine Multicastgruppe. |
| JoinGroup(SocketAddress, NetworkInterface) |
Verknüpft die angegebene Multicastgruppe an der angegebenen Schnittstelle. |
| LeaveGroup(InetAddress) |
Belassen Sie eine Multicastgruppe. |
| LeaveGroup(SocketAddress, NetworkInterface) |
Belassen Sie eine Multicastgruppe auf einer angegebenen lokalen Schnittstelle. |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| Receive(DatagramPacket) |
Empfängt ein Datagrammpaket von diesem Socket. (Geerbt von DatagramSocket) |
| ReceiveAsync(DatagramPacket) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von DatagramSocket) |
| Send(DatagramPacket, SByte) |
Veraltet.
Sendet ein Datagrammpaket an das Ziel, wobei ein TTL (Time-to-Live) außer dem Standard für den Socket verwendet wird. |
| Send(DatagramPacket) |
Sendet ein Datagrammpaket aus diesem Socket. (Geerbt von DatagramSocket) |
| SendAsync(DatagramPacket) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von DatagramSocket) |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetOption(ISocketOption, Object) |
Legt den Wert einer Socketoption fest. (Geerbt von DatagramSocket) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| SupportedOptions() |
Gibt einen Satz von Socketoptionen zurück, die von diesem Socket unterstützt werden. (Geerbt von DatagramSocket) |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.Finalized() |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. (Geerbt von DatagramSocket) |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Die Multicast-Datagrammsocketklasse ist nützlich für das Senden und Empfangen von IP-Multicastpaketen. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |