DownloadOperation.StartAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Avvia un'operazione di download asincrona.
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)
Restituisce
Operazione di download asincrona che include gli aggiornamenti dello stato.
- Attributi
Commenti
Eccezioni
COMException
Generato quando viene restituito un HRESULT specifico della funzionalità da una chiamata al metodo.
Si tratta dell'eccezione più comune generata dai metodi di rete. Un'app deve usare HRESULT dall'eccezione per determinare la causa dell'errore.
AccessDeniedException
Generata quando viene negato l'accesso a una risorsa o a una funzionalità. Questa eccezione si verifica quando un'app non dispone delle funzionalità di rete necessarie impostate nel manifesto dell'app per l'operazione di rete richiesta.
InvalidArgumentException
Generata quando uno degli argomenti forniti a un metodo non è valido.
Se l'input fornito dall'utente ha causato questa eccezione, un'app potrebbe informare l'utente e richiedere un nuovo input.
ObjectDisposedException
Generata quando viene eseguita un'operazione su un oggetto eliminato.
OutOfMemoryException
Generato quando è disponibile memoria insufficiente per completare l'operazione.
Il trasferimento in background non supporta download simultanei dello stesso URI. Quindi un'app può scaricare http://example.com/myfile.wmv
una volta o scaricarla nuovamente dopo il completamento di un download precedente. Un'app non deve avviare due download dello stesso URI simultaneamente, poiché questo potrebbe causare file troncati.
È necessario pianificare un'operazione di download usando uno dei metodi BackgroundDownloader.CreateDownloader.CreateDownloader.CreateDownloadAsync prima che venga chiamato il metodo StartAsync .
Importante
L'accodamento di un numero elevato di trasferimenti nel thread dell'interfaccia utente principale può causare prestazioni ridotte dell'interfaccia utente dell'app, anche se la chiamata è in attesa. Se si accoda un numero elevato di trasferimenti, è consigliabile chiamare StartAsync in un thread di lavoro in background come nell'esempio seguente.
operation = await Task.Run(() => { return myDownloadOperation.StartAsync(); });