다음을 통해 공유


PipeStream.EndRead(IAsyncResult) 메서드

정의

보류 중인 비동기 읽기 요청을 끝냅니다.

public:
 override int EndRead(IAsyncResult ^ asyncResult);
public override int EndRead (IAsyncResult asyncResult);
[System.Security.SecurityCritical]
public override int EndRead (IAsyncResult asyncResult);
override this.EndRead : IAsyncResult -> int
[<System.Security.SecurityCritical>]
override this.EndRead : IAsyncResult -> int
Public Overrides Function EndRead (asyncResult As IAsyncResult) As Integer

매개 변수

asyncResult
IAsyncResult

보류 중인 비동기 요청에 대한 참조입니다.

반환

지금까지 읽은 바이트 수입니다. 반환 값 0은 스트림의 끝(파이프가 닫힘)을 나타냅니다.

특성

예외

asyncResult이(가) null인 경우

asyncResult가 현재 스트림의 BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) 메서드에서 시작되지 않았습니다.

스트림이 닫혔거나 내부 오류가 발생했습니다.

설명

이 메서드는 에 대한 이전 호출에서 지정한 바이트 배열로 읽은 바이트 수를 반환합니다 BeginRead.

반환 IAsyncResult 된 개체를 메서드에 EndRead 전달하여 읽은 바이트 수를 확인하고 읽기에 사용되는 운영 체제 리소스를 해제합니다. EndRead 에 대한 모든 호출에 대해 한 번 호출해야 합니다 BeginRead. 이 작업은 호출 BeginRead 된 동일한 코드에서 또는 에 전달되는 BeginRead콜백에서 수행할 수 있습니다.

사용 된 CanRead 현재 개체 읽기 작업을 지원 하는지 여부를 PipeStream 확인 하려면 속성입니다.

파이프가 닫혀 있거나 잘못된 인수가 에 BeginRead전달되면 적절한 예외가 즉시 발생합니다. 비동기 읽기 요청 중에 발생하는 오류는 요청을 수행하는 스레드 풀 스레드에서 발생합니다. 코드에서 메서드를 호출할 때 예외가 발생합니다 EndRead .

적용 대상