NetworkStream.EndRead(IAsyncResult) Method

Definition

Handles the end of an asynchronous read.

C#
public override int EndRead(IAsyncResult asyncResult);

Parameters

asyncResult
IAsyncResult

An IAsyncResult that represents an asynchronous call.

Returns

The number of bytes read from the NetworkStream, between zero (0) and the number of bytes requested. The method returns zero (0) only if zero bytes were requested or if no more bytes are available because the peer socket performed a graceful shutdown. If zero bytes are requested, read operations might complete immediately or might not complete until at least one byte is available (but without consuming any data).

Exceptions

The asyncResult parameter is null.

The underlying Socket is closed.

-or-

An error occurred when accessing the socket.

Remarks

Dôležité

This is a compatibility API. We don't recommend using the APM (Begin / End) methods for new development. Instead, use the Task-based equivalents.

The EndRead method completes the read operation started by the BeginRead method. You need to pass the IAsyncResult created by the matching BeginRead call. EndRead will block the calling thread until the operation is completed.

Poznámka

If you receive an IOException, check the InnerException property to determine if it was caused by a SocketException. If so, use the ErrorCode property to obtain the specific error code.

Applies to

Produkt Verzie
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

See also