BackgroundWorker.RunWorkerAsync Metod

Definition

Startar körningen av en bakgrundsåtgärd.

Överlagringar

Name Description
RunWorkerAsync()

Startar körningen av en bakgrundsåtgärd.

RunWorkerAsync(Object)

Startar körningen av en bakgrundsåtgärd.

RunWorkerAsync()

Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs

Startar körningen av en bakgrundsåtgärd.

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

Undantag

Exempel

I följande kodexempel visas hur metoden används RunWorkerAsync för att starta en asynkron åtgärd. Det är en del av ett större exempel som beskrivs i Så här: Ladda ned en fil i bakgrunden.

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

Kommentarer

Metoden RunWorkerAsync skickar en begäran om att starta åtgärden som körs asynkront. När begäran hanteras aktiveras DoWork händelsen, vilket i sin tur startar körningen av bakgrundsåtgärden.

Om bakgrundsåtgärden redan körs genereras RunWorkerAsync en InvalidOperationException.

Se även

Gäller för

RunWorkerAsync(Object)

Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs
Källa:
BackgroundWorker.cs

Startar körningen av en bakgrundsåtgärd.

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

Parametrar

argument
Object

En parameter som ska användas av bakgrundsåtgärden som ska köras i DoWork händelsehanteraren.

Undantag

Exempel

I följande kodexempel visas hur metoden används RunWorkerAsync för att starta en asynkron åtgärd. Det här kodexemplet är en del av ett större exempel för BackgroundWorker klassen.

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

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

Kommentarer

Metoden RunWorkerAsync skickar en begäran om att starta åtgärden som körs asynkront. När begäran hanteras aktiveras DoWork händelsen, vilket i sin tur startar körningen av bakgrundsåtgärden.

Om åtgärden kräver en parameter kan du ange den som parameter till argumentRunWorkerAsync.

Om bakgrundsåtgärden redan körs genereras RunWorkerAsync en InvalidOperationException.

Se även

Gäller för