FileStream.CopyToAsync(Stream, Int32, CancellationToken) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Secara asinkron membaca byte dari aliran file saat ini dan menulisnya ke aliran lain, menggunakan ukuran buffer dan token pembatalan yang ditentukan.
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
Parameter
- destination
- Stream
Aliran tempat isi aliran file saat ini akan disalin.
- bufferSize
- Int32
Ukuran, dalam byte, dari buffer. Nilai ini harus lebih besar dari nol. Ukuran defaultnya adalah 81920.
- cancellationToken
- CancellationToken
Token yang akan dipantau untuk permintaan pembatalan. Nilai defaultnya adalah None.
Mengembalikan
Tugas yang mewakili operasi penyalinan asinkron.
Pengecualian
Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.
Keterangan
Metode ini CopyToAsync
memungkinkan Anda melakukan operasi I/O intensif sumber daya tanpa memblokir utas utama. Pertimbangan performa ini sangat penting dalam aplikasi Windows 8.x Store atau aplikasi desktop tempat operasi aliran yang memakan waktu dapat memblokir rangkaian UI dan membuat aplikasi tampak seolah-olah tidak berfungsi. Metode asinkron digunakan bersama dengan async
kata kunci dan await
di Visual Basic dan C#.
Jika operasi dibatalkan sebelum selesai, tugas yang dikembalikan berisi TaskStatus.Canceled nilai untuk Task.Status properti .
Penyalinan dimulai pada posisi saat ini di aliran file saat ini.
Untuk contoh penyalinan antara dua aliran, lihat CopyToAsync(Stream) kelebihan beban.