Sprache

MulticastSocket Klasse

Definition

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 java.nio.channels.DatagramChannel Objekt zurück, das diesem Datagrammsocket zugeordnet ist, falls vorhanden.

(Geerbt von DatagramSocket)
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
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 DatagramSocketOption ab, d. h. die Puffergröße, die von der Plattform für eingaben auf dieser DatagramSocketSeite verwendet wird. -or- Legt die option SO_RCVBUF auf den angegebenen Wert für diesen DatagramSocketfest.

(Geerbt von DatagramSocket)
RemoteSocketAddress

Gibt die Adresse des Endpunkts zurück, mit dem dieser Socket verbunden ist oder null nicht verbunden ist.

(Geerbt von DatagramSocket)
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 DatagramSocketOption ab, d. h. die Puffergröße, die von der Plattform für die Ausgabe auf dieser DatagramSocketSeite verwendet wird. -or- Legt die option SO_SNDBUF auf den angegebenen Wert für diesen DatagramSocketfest.

(Geerbt von DatagramSocket)
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 MulticastSocket Weise gesendet werden, um den Umfang der Multicasts zu steuern.

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 MulticastSocket Weise gesendet werden, um den Umfang der Multicasts zu steuern.

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 selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

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 selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: