Freigeben über


NetworkStream-Klasse

Stellt den zugrunde liegenden Datenstream für den Netzwerkzugriff bereit.

Namespace: System.Net.Sockets
Assembly: System (in system.dll)

Syntax

'Declaration
Public Class NetworkStream
    Inherits Stream
'Usage
Dim instance As NetworkStream
public class NetworkStream : Stream
public ref class NetworkStream : public Stream
public class NetworkStream extends Stream
public class NetworkStream extends Stream

Hinweise

Die NetworkStream-Klasse stellt Methoden zum Senden und Empfangen von Daten über Stream-Sockets im blockierenden Modus bereit. Weitere Informationen über blockierende und nicht blockierende Sockets finden Sie unter Verwenden eines asynchronen Clientsockets. Sie können die NetworkStream-Klasse sowohl für die synchrone als auch für die asynchrone Datenübertragung verwenden. Weitere Informationen über die synchrone und asynchrone Kommunikation finden Sie unter Sockets.

Zum Erstellen eines NetworkStream muss ein verbundener Socket bereitgestellt werden. Sie können auch die FileAccess-Berechtigung angeben, die der NetworkStream für den bereitgestellten Socket besitzt. Standardmäßig führt das Schließen des NetworkStream nicht zum Schließen des bereitgestellten Socket. Wenn der NetworkStream die Berechtigung haben soll, den bereitgestellten Socket zu schließen, müssen Sie für den ownsSocket-Parameter den Wert true angeben.

Verwenden Sie die Write-Methode und die Read-Methode für einfache blockierende E/A mit einem einzelnen synchronen Thread. Wenn die E/A mit getrennten Threads verarbeitet werden soll, empfiehlt es sich, die BeginWrite-Methode und die EndWrite-Methode oder die BeginRead-Methode und die EndRead-Methode für die Kommunikation zu verwenden.

Der NetworkStream unterstützt keinen wahlfreien Zugriff auf den Netzwerkdatenstream. Der Wert der CanSeek-Eigenschaft, der angibt, ob der Stream die Suche unterstützt, ist immer false. Das Lesen der Position-Eigenschaft oder der Length-Eigenschaft bzw. das Aufrufen der Seek-Methode löst eine NotSupportedException aus.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie ein NetworkStream aus einem verbundenen StreamSocket erstellt werden kann, um einfache synchrone blockierende E/A auszuführen.

' Create the NetworkStream for communicating with the remote host.
Dim myNetworkStream As NetworkStream

If networkStreamOwnsSocket Then
   myNetworkStream = New NetworkStream(mySocket, True)
Else
   myNetworkStream = New NetworkStream(mySocket)
End If
// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;

if (networkStreamOwnsSocket){
     myNetworkStream = new NetworkStream(mySocket, true);          
}
else{
     myNetworkStream = new NetworkStream(mySocket);     
}
// Create the NetworkStream for communicating with the remote host.
NetworkStream^ myNetworkStream;

if ( networkStreamOwnsSocket )
{
   myNetworkStream = gcnew NetworkStream( mySocket,true );
}
else
{
   myNetworkStream = gcnew NetworkStream( mySocket );
}
// specify file permission.
// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;
if (networkStreamOwnsSocket) {
    myNetworkStream = new NetworkStream(mySocket, true);
}
else {
    myNetworkStream = new NetworkStream(mySocket);
}

Vererbungshierarchie

System.Object
   System.MarshalByRefObject
     System.IO.Stream
      System.Net.Sockets.NetworkStream

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

NetworkStream-Member
System.Net.Sockets-Namespace
TcpClient