NetworkStream NetworkStream NetworkStream NetworkStream Class

Definition

Stellt den zugrunde liegenden Datenstrom für den Netzwerkzugriff bereit.Provides the underlying stream of data for network access.

public ref class NetworkStream : System::IO::Stream
public class NetworkStream : System.IO.Stream
type NetworkStream = class
    inherit Stream
Public Class NetworkStream
Inherits Stream
Vererbung

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie ein NetworkStream aus einer verbundenen Stream Socket erstellt und grundlegende synchrone blockierende e/a-Vorgänge durchgeführt werden.The following code example demonstrates how to create a NetworkStream from a connected StreamSocket and perform basic synchronous blocking I/O.

// Examples for constructors that do not specify file permission.
// Create the NetworkStream for communicating with the remote host.
NetworkStream^ myNetworkStream;

if ( networkStreamOwnsSocket )
{
   myNetworkStream = gcnew NetworkStream( mySocket,true );
}
else
{
   myNetworkStream = gcnew NetworkStream( mySocket );
}
// Examples for constructors that do not 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);     
}
' Examples for constructors that do not specify file permission.
' 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

Hinweise

Die NetworkStream -Klasse stellt Methoden zum Senden und empfangen von Stream Daten über Sockets im Blockierungs Modus bereit.The NetworkStream class provides methods for sending and receiving data over Stream sockets in blocking mode. Weitere Informationen zu Blockierungen und nicht blockierenden Sockets finden Sie unter Verwenden eines asynchronen Client Sockets.For more information about blocking versus nonblocking Sockets, see Using an Asynchronous Client Socket. Sie können die NetworkStream -Klasse sowohl für synchrone als auch für asynchrone Datenübertragungen verwenden.You can use the NetworkStream class for both synchronous and asynchronous data transfer. Weitere Informationen zur synchronen und asynchronen Kommunikation finden Sie unter Sockets.For more information about synchronous and asynchronous communication, see Sockets.

Um einen NetworkStreamzu erstellen, müssen Sie eine verbundene Socketbereitstellen.To create a NetworkStream, you must provide a connected Socket. Sie können auch angeben, FileAccess welche Berechtigung NetworkStream der über die angegebene Sockethat.You can also specify what FileAccess permission the NetworkStream has over the provided Socket. Standardmäßig wird beim Schließen NetworkStream von der angegebene Socketnicht geschlossen.By default, closing the NetworkStream does not close the provided Socket. Wenn Sie über die NetworkStream Berechtigung zum Schließen des bereitgestellten Socketverfügen möchten, müssen Sie true für den Wert des ownsSocket Parameters angeben.If you want the NetworkStream to have permission to close the provided Socket, you must specify true for the value of the ownsSocket parameter.

Verwenden Sie Write die Read Methoden und für einfache synchrone blockierende e/As mit einem einzelnen Thread.Use the Write and Read methods for simple single thread synchronous blocking I/O. Wenn Sie Ihre e/a-Vorgänge mit separaten Threads verarbeiten möchten, sollten Sie BeginWrite die EndWrite -Methode und die BeginRead - EndRead Methode oder die-Methode und die-Methode für die Kommunikation verwendenIf you want to process your I/O using separate threads, consider using the BeginWrite and EndWrite methods, or the BeginRead and EndRead methods for communication.

Der NetworkStream unterstützt keinen zufälligen Zugriff auf den Netzwerkdaten Strom.The NetworkStream does not support random access to the network data stream. Der Wert CanSeek der-Eigenschaft, der angibt, ob der Stream Suchvorgänge unterstützt false, ist immer Position ; das Lesen der Length Eigenschaft, das Lesen der Seek Eigenschaft oder das Aufrufen der Methode löst eine NotSupportedException.The value of the CanSeek property, which indicates whether the stream supports seeking, is always false; reading the Position property, reading the Length property, or calling the Seek method will throw a NotSupportedException.

Lese-und Schreibvorgänge können gleichzeitig für eine Instanz der NetworkStream -Klasse ausgeführt werden, ohne dass eine Synchronisierung erforderlich ist.Read and write operations can be performed simultaneously on an instance of the NetworkStream class without the need for synchronization. Solange es einen eindeutigen Thread für die Schreibvorgänge und einen eindeutigen Thread für die Lesevorgänge gibt, gibt es keine übergreifenden Störungen zwischen Lese-und Schreib Threads, und es ist keine Synchronisierung erforderlich.As long as there is one unique thread for the write operations and one unique thread for the read operations, there will be no cross-interference between read and write threads and no synchronization is required.

Konstruktoren

NetworkStream(Socket) NetworkStream(Socket) NetworkStream(Socket) NetworkStream(Socket)

Erstellt eine neue Instanz der NetworkStream-Klasse für den angegebenen Socket.Creates a new instance of the NetworkStream class for the specified Socket.

NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean) NetworkStream(Socket, Boolean)

Initialisiert eine neue Instanz der NetworkStream-Klasse für den angegebenen Socket mit dem angegebenen Besitz von Socket.Initializes a new instance of the NetworkStream class for the specified Socket with the specified Socket ownership.

NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess) NetworkStream(Socket, FileAccess)

Erstellt eine neue Instanz der NetworkStream-Klasse für den angegebenen Socket mit den angegebenen Zugriffsrechten.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights.

NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean) NetworkStream(Socket, FileAccess, Boolean)

Erstellt eine neue Instanz der NetworkStream-Klasse für den angegebenen Socket mit den angegebenen Zugriffsrechten und dem angegebenen Besitz von Socket.Creates a new instance of the NetworkStream class for the specified Socket with the specified access rights and the specified Socket ownership.

Eigenschaften

CanRead CanRead CanRead CanRead

Ruft einen Wert ab, der angibt, ob der NetworkStream Lesevorgänge unterstützt.Gets a value that indicates whether the NetworkStream supports reading.

CanSeek CanSeek CanSeek CanSeek

Ruft einen Wert ab, der angibt, ob der Stream Suchvorgänge unterstützt.Gets a value that indicates whether the stream supports seeking. Diese Eigenschaft wird gegenwärtig nicht unterstützt. Sie gibt immer false zurück.This property is not currently supported.This property always returns false.

CanTimeout CanTimeout CanTimeout CanTimeout

Gibt an, ob Timeouteigenschaften für NetworkStream verwendet werden können.Indicates whether timeout properties are usable for NetworkStream.

CanWrite CanWrite CanWrite CanWrite

Ruft einen Wert ab, der angibt, ob der NetworkStream Schreibvorgänge unterstützt.Gets a value that indicates whether the NetworkStream supports writing.

DataAvailable DataAvailable DataAvailable DataAvailable

Ruft einen Wert ab, der angibt, ob im NetworkStream Daten für einen Lesevorgang verfügbar sind.Gets a value that indicates whether data is available on the NetworkStream to be read.

Length Length Length Length

Gibt die Länge der im Stream verfügbaren Daten an.Gets the length of the data available on the stream. Diese Eigenschaft wird gegenwärtig nicht unterstützt und löst immer eine NotSupportedException aus.This property is not currently supported and always throws a NotSupportedException.

Position Position Position Position

Ruft die aktuelle Position im Stream ab oder legt diese fest.Gets or sets the current position in the stream. Diese Eigenschaft wird gegenwärtig nicht unterstützt und löst immer eine NotSupportedException aus.This property is not currently supported and always throws a NotSupportedException.

Readable Readable Readable Readable

Ruft einen Wert ab, der angibt, ob der NetworkStream gelesen werden kann, oder legt diesen fest.Gets or sets a value that indicates whether the NetworkStream can be read.

ReadTimeout ReadTimeout ReadTimeout ReadTimeout

Ruft die Zeitspanne ab, in der ein Lesevorgang während des Wartens auf Daten blockiert wird, oder legt diese fest.Gets or sets the amount of time that a read operation blocks waiting for data.

Socket Socket Socket Socket

Ruft die zugrunde liegende Socket ab.Gets the underlying Socket.

Writeable Writeable Writeable Writeable

Ruft einen Wert ab, der angibt, ob in den NetworkStream geschrieben werden kann.Gets a value that indicates whether the NetworkStream is writable.

WriteTimeout WriteTimeout WriteTimeout WriteTimeout

Ruft die Zeitspanne ab, in der ein Schreibvorgang während des Wartens auf Daten blockiert wird, oder legt diese fest.Gets or sets the amount of time that a write operation blocks waiting for data.

Methoden

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Lesevorgang aus dem NetworkStream.Begins an asynchronous read from the NetworkStream.

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Beginnt einen asynchronen Schreibvorgang in einen Stream.Begins an asynchronous write to a stream.

Close() Close() Close() Close()

Schließt den NetworkStream.Closes the NetworkStream.

Close(Int32) Close(Int32) Close(Int32) Close(Int32)

Schließt den NetworkStream nach der angegebenen Zeitspanne, in der Daten gesendet werden können.Closes the NetworkStream after waiting the specified time to allow data to be sent.

CopyTo(Stream) CopyTo(Stream) CopyTo(Stream) CopyTo(Stream)

Liest alle Bytes aus dem aktuellen Stream und schreibt sie in einen anderen Datenstrom.Reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32) CopyTo(Stream, Int32)

Liest alles Bytes aus dem aktuellen Datenstrom und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Datenstrom.Reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream) CopyToAsync(Stream)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream.

(Inherited from Stream)
CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken) CopyToAsync(Stream, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung eines angegebenen Abbruchtokens in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified cancellation token.

(Inherited from Stream)
CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32) CopyToAsync(Stream, Int32)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung einer angegebenen Puffergröße in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size.

(Inherited from Stream)
CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken) CopyToAsync(Stream, Int32, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Stream und schreibt sie unter Verwendung einer angegebenen Puffergröße und eines Abbruchtokens in einen anderen Stream.Asynchronously reads the bytes from the current stream and writes them to another stream, using a specified buffer size and cancellation token.

(Inherited from Stream)
CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateWaitHandle() CreateWaitHandle() CreateWaitHandle() CreateWaitHandle()

Reserviert ein WaitHandle-Objekt.Allocates a WaitHandle object.

(Inherited from Stream)
Dispose() Dispose() Dispose() Dispose()

Gibt alle vom Stream verwendeten Ressourcen frei.Releases all resources used by the Stream.

(Inherited from Stream)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von NetworkStream verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the NetworkStream and optionally releases the managed resources.

DisposeAsync() DisposeAsync() DisposeAsync() DisposeAsync()

Gibt die nicht verwalteten Ressourcen, die von der Stream verwendet werden, asynchron frei.Asynchronously releases the unmanaged resources used by the Stream.

(Inherited from Stream)
EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult) EndRead(IAsyncResult)

Behandelt das Ende eines asynchronen Lesevorgangs.Handles the end of an asynchronous read.

EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult) EndWrite(IAsyncResult)

Behandelt das Ende eines asynchronen Schreibvorgangs.Handles the end of an asynchronous write.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Gibt alle vom NetworkStream verwendeten Ressourcen frei.Releases all resources used by the NetworkStream.

Flush() Flush() Flush() Flush()

Schreibt Daten aus dem Stream weg.Flushes data from the stream. Diese Methode ist für eine spätere Verwendung vorgesehen.This method is reserved for future use.

FlushAsync() FlushAsync() FlushAsync() FlushAsync()

Löscht sämtliche Puffer für diesen Stream asynchron und veranlasst die Ausgabe aller gepufferten Daten an das zugrunde liegende Gerät.Asynchronously clears all buffers for this stream and causes any buffered data to be written to the underlying device.

(Inherited from Stream)
FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken) FlushAsync(CancellationToken)

Leert Daten aus dem Stream als asynchroner Vorgang.Flushes data from the stream as an asynchronous operation.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ObjectInvariant() ObjectInvariant() ObjectInvariant() ObjectInvariant()

Bietet Unterstützung für einen Contract.Provides support for a Contract.

(Inherited from Stream)
Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32) Read(Byte[], Int32, Int32)

Liest Daten aus NetworkStream und speichert sie in einem Bytearray.Reads data from the NetworkStream and stores it to a byte array.

Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>) Read(Span<Byte>)

Liest Daten aus NetworkStream und speichert sie in eine Bytespanne im Speicher.Reads data from the NetworkStream and stores it to a span of bytes in memory.

ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32) ReadAsync(Byte[], Int32, Int32)

Liest eine Bytesequenz asynchron aus dem aktuellen Stream und setzt die Position in diesem Stream um die Anzahl der gelesenen Bytes nach vorn.Asynchronously reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.

(Inherited from Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken) ReadAsync(Byte[], Int32, Int32, CancellationToken)

Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einen festgelegten Bereich eines Bytearrays.Reads data from the NetworkStream and stores it to a specified range of a byte array as an asynchronous operation.

ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken) ReadAsync(Memory<Byte>, CancellationToken)

Liest Daten aus NetworkStream und speichert sie als asynchronen Vorgang in einem Bytespeicherbereich.Reads data from the NetworkStream and stores it in a byte memory range as an asynchronous operation.

ReadByte() ReadByte() ReadByte() ReadByte()

Liest ein Byte aus NetworkStream und erhöht die Position im Datenstrom um ein Byte, oder gibt „-1“ zurück, wenn das Ende des Datenstroms erreicht ist.Reads a byte from the NetworkStream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.

Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin) Seek(Int64, SeekOrigin)

Legt die aktuelle Position des Streams auf den angegebenen Wert fest.Sets the current position of the stream to the given value. Diese Methode wird gegenwärtig nicht unterstützt und löst immer eine NotSupportedException aus.This method is not currently supported and always throws a NotSupportedException.

SetLength(Int64) SetLength(Int64) SetLength(Int64) SetLength(Int64)

Legt die Länge des Streams fest.Sets the length of the stream. Diese Methode löst immer eine NotSupportedException aus.This method always throws a NotSupportedException.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32) Write(Byte[], Int32, Int32)

Schreibt Daten aus einem festgelegten Bereich eines Bytearrays in NetworkStream.Writes data to the NetworkStream from a specified range of a byte array.

Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>) Write(ReadOnlySpan<Byte>)

Schreibt Daten aus einer schreibgeschützten Bytespanne inNetworkStream.Writes data to the NetworkStream from a read-only byte span.

WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32) WriteAsync(Byte[], Int32, Int32)

Schreibt eine Bytesequenz asynchron in den aktuellen Stream und setzt die aktuelle Position in diesem Stream um die Anzahl der geschriebenen Bytes nach vorn.Asynchronously writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.

(Inherited from Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken) WriteAsync(Byte[], Int32, Int32, CancellationToken)

Schreibt Daten aus dem angegebenen Bereich eines Bytearrays als asynchronen Vorgang in NetworkStream.Writes data to the NetworkStream from the specified range of a byte array as an asynchronous operation.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Schreibt Daten aus einem schreibgeschützten Bytespeicherbereich als asynchronen Vorgang in NetworkStream.Writes data to the NetworkStream from a read-only memory byte memory range as an asynchronous operation.

WriteByte(Byte) WriteByte(Byte) WriteByte(Byte) WriteByte(Byte)

Schreibt ein Byte an die aktuellen Position in NetworkStream und erhöht die aktuelle Position im Datenstrom um ein Byte.Writes a byte to the current position in the NetworkStream and advances the position within the stream by one byte.

Explizite Schnittstellenimplementierungen

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Gibt alle vom NetworkStream verwendeten Ressourcen frei.Releases all resources used by the NetworkStream.

Gilt für:

Siehe auch