Sprache

ParcelFileDescriptor.FromSocket(Socket) Methode

Definition

Erstellen Sie einen neuen ParcelFileDescriptor aus dem angegebenen Socket.

[Android.Runtime.Register("fromSocket", "(Ljava/net/Socket;)Landroid/os/ParcelFileDescriptor;", "")]
public static Android.OS.ParcelFileDescriptor? FromSocket(Java.Net.Socket? socket);
[<Android.Runtime.Register("fromSocket", "(Ljava/net/Socket;)Landroid/os/ParcelFileDescriptor;", "")>]
static member FromSocket : Java.Net.Socket -> Android.OS.ParcelFileDescriptor

Parameter

socket
Socket

Der Socket, dessen FileDescriptor verwendet wird, um einen neuen ParcelFileDescriptor zu erstellen.

Gibt zurück

Ein neuer ParcelFileDescriptor mit einer dupeden Kopie des FileDescriptor des angegebenen Sockets.

Attribute

Hinweise

Erstellen Sie einen neuen ParcelFileDescriptor aus dem angegebenen Socket. Der neue ParcelFileDescriptor enthält einen Dup des ursprünglichen FileDescriptors im Socket, sodass Sie den Socket sowie den neuen ParcelFileDescriptor weiterhin schließen müssen.

<strong>WARNING:</strong> Vor API-Ebene 29 würde diese Funktion nicht tatsächlich den FileDescriptor des Sockets dupieren und stattdessen einen Verweis auf den internen FileDescriptor verwenden. Wenn der Socket vor dem ParcelFileDescriptor garbage gesammelt wird, kann dies dazu führen, dass der PaketFileDescriptor unerwartet geschlossen wird. Um dies zu vermeiden, kann das folgende Muster verwendet werden:

{@code
               ParcelFileDescriptor pfd = ParcelFileDescriptor.fromSocket(socket).dup();
            }

Java Dokumentation für android.os.ParcelFileDescriptor.fromSocket(java.net.Socket).

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.

Gilt für: