Bagikan melalui


DownloadOperation.StartAsync Metode

Definisi

Memulai operasi pengunduhan asinkron.

public:
 virtual IAsyncOperationWithProgress<DownloadOperation ^, DownloadOperation ^> ^ StartAsync() = StartAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<DownloadOperation, DownloadOperation const&> StartAsync();
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<DownloadOperation,DownloadOperation> StartAsync();
function startAsync()
Public Function StartAsync () As IAsyncOperationWithProgress(Of DownloadOperation, DownloadOperation)

Mengembalikan

Operasi pengunduhan asinkron yang mencakup pembaruan kemajuan.

Atribut

Keterangan

Pengecualian

COMException

Dilemparkan saat HRESULT khusus fitur dikembalikan dari panggilan metode.

Ini adalah pengecualian paling umum yang dilemparkan oleh metode jaringan. Aplikasi harus menggunakan HRESULT dari pengecualian untuk menentukan penyebab kesalahan.

AccessDeniedException

Dilemparkan saat akses ditolak ke sumber daya atau fitur. Pengecualian ini terjadi ketika aplikasi tidak memiliki kemampuan jaringan yang diperlukan yang diatur dalam manifes aplikasi untuk operasi jaringan yang diminta.

InvalidArgumentException

Dilemparkan ketika salah satu argumen yang disediakan untuk metode tidak valid.

Jika input yang disediakan pengguna menyebabkan pengecualian ini, aplikasi dapat memberi tahu pengguna dan meminta input baru.

ObjectDisposedException

Dilemparkan ketika operasi dilakukan pada objek yang dibuang.

OutOfMemoryException

Dilemparkan ketika memori yang tidak mencukup tersedia untuk menyelesaikan operasi.

Transfer latar belakang tidak mendukung unduhan bersamaan dari Uri yang sama. Jadi aplikasi dapat mengunduh http://example.com/myfile.wmv sekali, atau mengunduhnya lagi setelah unduhan sebelumnya selesai. Aplikasi tidak boleh memulai dua unduhan Uri yang sama secara bersamaan, karena ini dapat mengakibatkan file terpotong.

Operasi pengunduhan harus dijadwalkan menggunakan salah satu metode BackgroundDownloader.CreateDownload atau BackgroundDownloader.CreateDownloadAsync sebelum metode StartAsync dipanggil.

Penting

Mengantre sejumlah besar transfer pada utas UI utama dapat mengakibatkan penurunan performa UI aplikasi Anda, meskipun panggilan dapat ditunggu. Jika Anda mengantre sejumlah besar transfer, disarankan agar Anda memanggil StartAsync pada utas pekerja latar belakang seperti dalam contoh berikut.

operation = await Task.Run(() => { return myDownloadOperation.StartAsync(); });

Berlaku untuk

Lihat juga