BackgroundWorker.RunWorkerAsync Methode

Definition

Startet die Ausführung eines Hintergrundvorgangs.Starts execution of a background operation.

Überlädt

RunWorkerAsync()

Startet die Ausführung eines Hintergrundvorgangs.Starts execution of a background operation.

RunWorkerAsync(Object)

Startet die Ausführung eines Hintergrundvorgangs.Starts execution of a background operation.

RunWorkerAsync()

Startet die Ausführung eines Hintergrundvorgangs.Starts execution of a background operation.

public:
 void RunWorkerAsync();
public void RunWorkerAsync ();
member this.RunWorkerAsync : unit -> unit
Public Sub RunWorkerAsync ()

Ausnahmen

Beispiele

Im folgenden Codebeispiel wird die Verwendung der RunWorkerAsync-Methode zum Starten eines asynchronen Vorgangs veranschaulicht.The following code example demonstrates the use of the RunWorkerAsync method to start an asynchronous operation. Es ist Teil eines größeren Beispiels, das in Vorgehensweise: Laden Sie eine Datei in den Hintergrundherunter.It is part of a larger example described in How to: Download a File in the Background.

private void downloadButton_Click(object sender, EventArgs e)
{
    // Start the download operation in the background.
    this.backgroundWorker1.RunWorkerAsync();

    // Disable the button for the duration of the download.
    this.downloadButton.Enabled = false;

    // Once you have started the background thread you 
    // can exit the handler and the application will 
    // wait until the RunWorkerCompleted event is raised.

    // Or if you want to do something else in the main thread,
    // such as update a progress bar, you can do so in a loop 
    // while checking IsBusy to see if the background task is
    // still running.

    while (this.backgroundWorker1.IsBusy)
    {
        progressBar1.Increment(1);
        // Keep UI messages moving, so the form remains 
        // responsive during the asynchronous operation.
        Application.DoEvents();
    }
}
Private Sub downloadButton_Click( _
    ByVal sender As Object, _
    ByVal e As EventArgs) _
    Handles downloadButton.Click

    ' Start the download operation in the background.
    Me.backgroundWorker1.RunWorkerAsync()

    ' Disable the button for the duration of the download.
    Me.downloadButton.Enabled = False

    ' Once you have started the background thread you 
    ' can exit the handler and the application will 
    ' wait until the RunWorkerCompleted event is raised.

    ' If you want to do something else in the main thread,
    ' such as update a progress bar, you can do so in a loop 
    ' while checking IsBusy to see if the background task is
    ' still running.
    While Me.backgroundWorker1.IsBusy
        progressBar1.Increment(1)
        ' Keep UI messages moving, so the form remains 
        ' responsive during the asynchronous operation.
        Application.DoEvents()
    End While
End Sub

Hinweise

Die RunWorkerAsync-Methode sendet eine Anforderung, um den asynchronen Vorgang zu starten.The RunWorkerAsync method submits a request to start the operation running asynchronously. Wenn die Anforderung gewartet wird, wird das DoWork-Ereignis ausgelöst, das wiederum die Ausführung des Hintergrund Vorgangs startet.When the request is serviced, the DoWork event is raised, which in turn starts execution of your background operation.

Wenn der Hintergrund Vorgang bereits ausgeführt wird, wird durch das erneute Aufrufen von RunWorkerAsync eine InvalidOperationException.If the background operation is already running, calling RunWorkerAsync again will raise an InvalidOperationException.

Siehe auch

RunWorkerAsync(Object)

Startet die Ausführung eines Hintergrundvorgangs.Starts execution of a background operation.

public:
 void RunWorkerAsync(System::Object ^ argument);
public void RunWorkerAsync (object argument);
member this.RunWorkerAsync : obj -> unit
Public Sub RunWorkerAsync (argument As Object)

Parameter

argument
Object

Ein Parameter, der von dem Hintergrundvorgang verwendet wird, der im DoWork-Ereignishandler ausgeführt wird.A parameter for use by the background operation to be executed in the DoWork event handler.

Ausnahmen

Beispiele

Im folgenden Codebeispiel wird die Verwendung der RunWorkerAsync-Methode zum Starten eines asynchronen Vorgangs veranschaulicht.The following code example demonstrates the use of the RunWorkerAsync method to start an asynchronous operation. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die BackgroundWorker-Klasse bereitgestellt wird.This code example is part of a larger example provided for the BackgroundWorker class.

// Start the asynchronous operation.
backgroundWorker1->RunWorkerAsync( numberToCompute );
// Start the asynchronous operation.
backgroundWorker1.RunWorkerAsync(numberToCompute);

' Start the asynchronous operation.
backgroundWorker1.RunWorkerAsync(numberToCompute)

Hinweise

Die RunWorkerAsync-Methode sendet eine Anforderung, um den asynchronen Vorgang zu starten.The RunWorkerAsync method submits a request to start the operation running asynchronously. Wenn die Anforderung gewartet wird, wird das DoWork-Ereignis ausgelöst, das wiederum die Ausführung des Hintergrund Vorgangs startet.When the request is serviced, the DoWork event is raised, which in turn starts execution of your background operation.

Wenn für den Vorgang ein-Parameter erforderlich ist, können Sie ihn als argument Parameter angeben, um RunWorkerAsync.If your operation requires a parameter, you can provide it as the argument parameter to RunWorkerAsync.

Wenn der Hintergrund Vorgang bereits ausgeführt wird, wird durch das erneute Aufrufen von RunWorkerAsync eine InvalidOperationException.If the background operation is already running, calling RunWorkerAsync again will raise an InvalidOperationException.

Siehe auch

Gilt für: