Aracılığıyla paylaş


BufferedStream.CopyToAsync(Stream, Int32, CancellationToken) Yöntem

Tanım

Geçerli arabelleğe alınan akıştan baytları zaman uyumsuz olarak okur ve belirtilen arabellek boyutu ve iptal belirtecini kullanarak başka bir akışa yazar.

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

Parametreler

destination
Stream

Geçerli arabelleğe alınan akışın içeriğinin kopyalanacağı akış.

bufferSize
Int32

Arabelleğin bayt cinsinden boyutu. Bu değer sıfırdan büyük olmalıdır. Varsayılan boyutlayıcı 81920'dir.

cancellationToken
CancellationToken

İptal isteklerini izlemek için belirteç. Varsayılan değer None değeridir.

Döndürülenler

Zaman uyumsuz kopyalama işlemini temsil eden görev.

Özel durumlar

İptal belirteci iptal edildi. Bu özel durum, döndürülen görevde depolanır.

Açıklamalar

yöntemi, CopyToAsync ana iş parçacığını engellemeden yoğun kaynak kullanımlı G/Ç işlemleri gerçekleştirmenizi sağlar. Zaman alan bir akış işleminin ui iş parçacığını engelleyebildiği ve uygulamanızın çalışmıyor gibi görünmesini sağlayabildiği bir Windows 8.x Store uygulamasında veya masaüstü uygulamasında bu performansla ilgili dikkat edilmesi gerekenler özellikle önemlidir. Zaman uyumsuz yöntemler, Visual Basic ve C# içindeki ve await anahtar sözcükleriyle async birlikte kullanılır.

İşlem tamamlanmadan önce iptal edilirse, döndürülen görev özelliğin CanceledStatus değerini içerir.

Kopyalama, geçerli akıştaki geçerli konumda başlar.

Bu yöntem, yöntemin zaman uyumlu karşılık geleninin oluşturabileceği tüm kullanım dışı özel durumları döndürdüğü görevde depolar. Döndürülen görevde bir özel durum depolanırsa, görev beklendiğinde bu özel durum oluşturulur. ArgumentExceptiongibi kullanım özel durumları hâlâ eşzamanlı olarak fırlatılır. Depolanan özel durumlar için tarafından CopyTo(Stream, Int32)oluşan özel durumlara bakın.

Şunlara uygulanır