DeflateStream.CopyToAsync(Stream, Int32, CancellationToken) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 Deflate 스트림에서 바이트를 비동기적으로 읽어 지정된 버퍼 크기로 다른 스트림에 씁니다.
public:
override System::Threading::Tasks::Task ^ CopyToAsync(System::IO::Stream ^ destination, int bufferSize, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task CopyToAsync (System.IO.Stream destination, int bufferSize, System.Threading.CancellationToken cancellationToken);
override this.CopyToAsync : System.IO.Stream * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function CopyToAsync (destination As Stream, bufferSize As Integer, cancellationToken As CancellationToken) As Task
매개 변수
- destination
- Stream
현재 Deflate 스트림의 내용을 복사할 스트림입니다.
- bufferSize
- Int32
버퍼의 크기(바이트)입니다. 이 값은 0보다 커야 합니다. 기본 크기는 81920입니다.
- cancellationToken
- CancellationToken
취소 요청을 모니터링할 토큰입니다. 기본값은 None입니다.
반환
비동기 복사 작업을 나타내는 작업입니다.
예외
취소 토큰이 취소되었습니다. 이 예외는 반환된 작업에 저장됩니다.
설명
메서드 CopyToAsync
를 사용하면 기본 스레드를 차단하지 않고 리소스 집약적 I/O 작업을 수행할 수 있습니다. 이 성능 고려 사항은 시간이 많이 걸리는 스트림 작업이 UI 스레드를 차단하고 앱이 작동하지 않는 것처럼 표시되도록 할 수 있는 데스크톱 앱에서 특히 중요합니다. 비동기 메서드는 Visual Basic 및 C#의 async
및 await
키워드와 함께 사용됩니다.
작업이 완료되기 전에 취소된 경우 반환된 작업에는 속성 값 TaskStatus.Canceled 이 Task.Status 포함됩니다.
복사는 현재 Deflate 스트림의 현재 위치에서 시작됩니다.
이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 태스크에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw CopyTo(Stream, Int32)된 예외를 참조하세요.
적용 대상
.NET