Udostępnij za pośrednictwem


NetworkStream.WriteAsync Metoda

Definicja

Przeciążenia

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Zapisuje dane z NetworkStream zakresu pamięci bajtów tylko do odczytu jako operację asynchroniczną.

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

Zapisuje dane z NetworkStream określonego zakresu tablicy bajtów jako operację asynchroniczną.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Źródło:
NetworkStream.cs
Źródło:
NetworkStream.cs
Źródło:
NetworkStream.cs

Zapisuje dane z NetworkStream zakresu pamięci bajtów tylko do odczytu jako operację asynchroniczną.

public override System.Threading.Tasks.ValueTask WriteAsync (ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask

Parametry

buffer
ReadOnlyMemory<Byte>

Region pamięci, który zawiera dane do zapisu w obiekcie NetworkStream.

cancellationToken
CancellationToken

Token do monitorowania żądań anulowania.

Zwraca

Zadanie, które reprezentuje asynchroniczny zapis operacji.

Wyjątki

Element NetworkStream nie obsługuje pisania.

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

-lub-

Wystąpił błąd podczas zapisywania w sieci.

Element NetworkStream jest zamknięty.

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwracanym zadaniu.

Uwagi

Ta metoda wysyła wszystkie bajty do buffer sieci.

Uwaga

Sprawdź, czy właściwość NetworkStream jest zapisywalna, wywołując CanWrite właściwość . Jeśli spróbujesz zapisać w obiekcie NetworkStream , który nie jest zapisywalny, otrzymasz wartość InvalidOperationException.

Uwaga

Jeśli otrzymasz element IOException, sprawdź InnerException właściwość , aby ustalić, czy została ona spowodowana przez element SocketException. Jeśli tak, użyj ErrorCode właściwości , aby uzyskać określony kod błędu i zapoznaj się z dokumentacją kodu błędu interfejsu API Windows Sockets w wersji 2, aby uzyskać szczegółowy opis błędu.

Dotyczy

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

Źródło:
NetworkStream.cs
Źródło:
NetworkStream.cs
Źródło:
NetworkStream.cs

Zapisuje dane z NetworkStream określonego zakresu tablicy bajtów jako operację asynchroniczną.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int size, System::Threading::CancellationToken cancellationToken);
public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int size, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

Parametry

buffer
Byte[]

Tablica bajtów zawierająca dane do zapisu w obiekcie NetworkStream.

offset
Int32

Lokalizacja, w buffer której ma rozpocząć zapisywanie danych.

sizecount
Int32

Liczba bajtów do zapisania w obiekcie NetworkStream.

cancellationToken
CancellationToken

Token do monitorowania żądań anulowania.

Zwraca

Zadanie, które reprezentuje asynchroniczny zapis operacji.

Wyjątki

Parametr buffer ma wartość null.

Parametr offset jest mniejszy niż 0.

-lub-

Parametr offset jest większy niż długość buffer.

-lub-

Parametr size jest mniejszy niż 0.

-lub-

Parametr size jest większy niż długość buffer minus wartość parametru offset .

Element NetworkStream nie obsługuje pisania.

Wystąpił błąd podczas zapisywania w sieci.

-lub-

Wystąpił błąd podczas uzyskiwania dostępu do gniazda.

Element NetworkStream jest zamknięty.

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwracanym zadaniu.

Uwagi

Ta metoda rozpoczyna się od określonej offset metody i wysyła bajty size z zawartości buffer do sieci.

Uwaga

Sprawdź, czy właściwość NetworkStream jest zapisywalna, wywołując CanWrite właściwość . Jeśli spróbujesz zapisać w obiekcie NetworkStream , który nie jest zapisywalny, otrzymasz wartość InvalidOperationException.

Uwaga

Jeśli otrzymasz element IOException, sprawdź InnerException właściwość , aby ustalić, czy została ona spowodowana przez element SocketException. Jeśli tak, użyj ErrorCode właściwości , aby uzyskać określony kod błędu i zapoznaj się z dokumentacją kodu błędu interfejsu API Windows Sockets w wersji 2, aby uzyskać szczegółowy opis błędu.

Ta metoda jest przechowywana w zadaniu, które zwraca wszystkie wyjątki nieużytowe, które może zgłosić synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwracanym zadaniu, ten wyjątek zostanie zgłoszony podczas oczekiwania zadania. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. W przypadku przechowywanych wyjątków zobacz wyjątki zgłoszone przez Write(Byte[], Int32, Int32)usługę .

Dotyczy