BackgroundWorker.RunWorkerAsync BackgroundWorker.RunWorkerAsync BackgroundWorker.RunWorkerAsync BackgroundWorker.RunWorkerAsync Method

Definición

Inicia la ejecución de una operación en segundo plano.Starts execution of a background operation.

Sobrecargas

RunWorkerAsync() RunWorkerAsync() RunWorkerAsync() RunWorkerAsync()

Inicia la ejecución de una operación en segundo plano.Starts execution of a background operation.

RunWorkerAsync(Object) RunWorkerAsync(Object) RunWorkerAsync(Object) RunWorkerAsync(Object)

Inicia la ejecución de una operación en segundo plano.Starts execution of a background operation.

RunWorkerAsync() RunWorkerAsync() RunWorkerAsync() RunWorkerAsync()

Inicia la ejecución de una operación en segundo plano.Starts execution of a background operation.

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

Excepciones

Ejemplos

En el ejemplo de código siguiente se muestra el uso de la RunWorkerAsync método para iniciar una operación asincrónica.The following code example demonstrates the use of the RunWorkerAsync method to start an asynchronous operation. Forma parte de un ejemplo más extenso que se describe en Cómo: descargar un archivo en segundo plano.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

Comentarios

El RunWorkerAsync método envía una solicitud para iniciar la operación de ejecución de forma asincrónica.The RunWorkerAsync method submits a request to start the operation running asynchronously. Cuando se atiende la solicitud, el DoWork se genera el evento, que a su vez inicia la ejecución de la operación en segundo plano.When the request is serviced, the DoWork event is raised, which in turn starts execution of your background operation.

Si ya se está ejecutando la operación en segundo plano, la llamada a RunWorkerAsync nuevo, se producirá un InvalidOperationException.If the background operation is already running, calling RunWorkerAsync again will raise an InvalidOperationException.

Consulte también:

RunWorkerAsync(Object) RunWorkerAsync(Object) RunWorkerAsync(Object) RunWorkerAsync(Object)

Inicia la ejecución de una operación en segundo plano.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)

Parámetros

argument
Object Object Object Object

Parámetro que utiliza la operación en segundo plano que se va a ejecutar en el controlador de eventos DoWork.A parameter for use by the background operation to be executed in the DoWork event handler.

Excepciones

Ejemplos

En el ejemplo de código siguiente se muestra el uso de la RunWorkerAsync método para iniciar una operación asincrónica.The following code example demonstrates the use of the RunWorkerAsync method to start an asynchronous operation. Este ejemplo de código forma parte de un ejemplo más extenso proporcionado para el BackgroundWorker clase.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)

Comentarios

El RunWorkerAsync método envía una solicitud para iniciar la operación de ejecución de forma asincrónica.The RunWorkerAsync method submits a request to start the operation running asynchronously. Cuando se atiende la solicitud, el DoWork se genera el evento, que a su vez inicia la ejecución de la operación en segundo plano.When the request is serviced, the DoWork event is raised, which in turn starts execution of your background operation.

Si la operación requiere un parámetro, puede proporcionar como el argument parámetro RunWorkerAsync.If your operation requires a parameter, you can provide it as the argument parameter to RunWorkerAsync.

Si ya se está ejecutando la operación en segundo plano, la llamada a RunWorkerAsync nuevo, se producirá un InvalidOperationException.If the background operation is already running, calling RunWorkerAsync again will raise an InvalidOperationException.

Consulte también:

Se aplica a