Freigeben über


DownloadOperation.StartAsync Methode

Definition

Startet einen asynchronen Downloadvorgang.

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)

Gibt zurück

Ein asynchroner Downloadvorgang, der Statusupdates enthält.

Attribute

Hinweise

Ausnahmen

COMException

Wird ausgelöst, wenn ein featurespezifisches HRESULT von einem Methodenaufruf zurückgegeben wird.

Dies ist die häufigste Ausnahme, die von Netzwerkmethoden ausgelöst wird. Eine App sollte das HRESULT aus der Ausnahme verwenden, um die Fehlerursache zu ermitteln.

AccessDeniedException

Wird ausgelöst, wenn der Zugriff auf eine Ressource oder eine Funktion verweigert wird. Diese Ausnahme tritt auf, wenn für eine App nicht die erforderlichen Netzwerkfunktionen im App-Manifest für den angeforderten Netzwerkvorgang festgelegt sind.

InvalidArgumentException

Wird ausgelöst, wenn eines der Argumente für eine Methode ungültig ist.

Wenn die vom Benutzer bereitgestellte Eingabe diese Ausnahme verursacht hat, kann eine App den Benutzer informieren und neue Eingaben anfordern.

ObjectDisposedException

Wird ausgelöst, wenn ein Vorgang für ein verworfenes Objekt ausgeführt wird.

OutOfMemoryException

Wird ausgelöst, wenn nicht genügend Arbeitsspeicher zum Abschließen des Vorgangs verfügbar ist.

Die Hintergrundübertragung unterstützt keine gleichzeitigen Downloads desselben URI. Eine App kann also einmal heruntergeladen http://example.com/myfile.wmv oder erneut heruntergeladen werden, nachdem ein vorheriger Download abgeschlossen ist. Eine App sollte nicht zwei Downloads desselben URI gleichzeitig starten, da dies zu abgeschnittenen Dateien führen kann.

Ein Downloadvorgang muss mit einer der Methoden BackgroundDownloader.CreateDownload oder BackgroundDownloader.CreateDownloadAsync geplant werden, bevor die StartAsync-Methode aufgerufen wird.

Wichtig

Das Anstehen einer großen Anzahl von Übertragungen im Standard UI-Thread kann zu einer Leistungseinbuße der Benutzeroberfläche Ihrer App führen, obwohl der Aufruf erwartet wird. Wenn Sie eine große Anzahl von Übertragungen in die Warteschlange stellen, wird empfohlen, StartAsync wie im folgenden Beispiel in einem Hintergrundarbeitsthread aufzurufen.

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

Gilt für:

Weitere Informationen