BackgroundWorker.RunWorkerAsync Methode

Definitie

Hiermee start u de uitvoering van een achtergrondbewerking.

Overloads

Name Description
RunWorkerAsync()

Hiermee start u de uitvoering van een achtergrondbewerking.

RunWorkerAsync(Object)

Hiermee start u de uitvoering van een achtergrondbewerking.

RunWorkerAsync()

Hiermee start u de uitvoering van een achtergrondbewerking.

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

Uitzonderingen

Voorbeelden

In het volgende codevoorbeeld ziet u hoe de RunWorkerAsync methode wordt gebruikt om een asynchrone bewerking te starten. Het maakt deel uit van een groter voorbeeld dat wordt beschreven in Procedure: Een bestand op de achtergrond downloaden.

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

    // Disable the button for the duration of the download.
    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 (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

Opmerkingen

De RunWorkerAsync methode verzendt een aanvraag om de bewerking asynchroon te starten. Wanneer de aanvraag wordt verwerkt, wordt de DoWork gebeurtenis gegenereerd, die op zijn beurt de uitvoering van uw achtergrondbewerking start.

Als de achtergrondbewerking al wordt uitgevoerd, wordt een aanroep RunWorkerAsync opnieuw geactiveerd InvalidOperationException.

Zie ook

Van toepassing op

RunWorkerAsync(Object)

Hiermee start u de uitvoering van een achtergrondbewerking.

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

Parameters

argument
Object

Een parameter voor gebruik door de achtergrondbewerking die moet worden uitgevoerd in de DoWork gebeurtenis-handler.

Uitzonderingen

Voorbeelden

In het volgende codevoorbeeld ziet u hoe de RunWorkerAsync methode wordt gebruikt om een asynchrone bewerking te starten. Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor de BackgroundWorker klasse.

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

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

Opmerkingen

De RunWorkerAsync methode verzendt een aanvraag om de bewerking asynchroon te starten. Wanneer de aanvraag wordt verwerkt, wordt de DoWork gebeurtenis gegenereerd, die op zijn beurt de uitvoering van uw achtergrondbewerking start.

Als voor uw bewerking een parameter is vereist, kunt u deze opgeven als parameter argument voor RunWorkerAsync.

Als de achtergrondbewerking al wordt uitgevoerd, wordt een aanroep RunWorkerAsync opnieuw geactiveerd InvalidOperationException.

Zie ook

Van toepassing op