Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

BackgroundWorker.IsBusy Property

Definition

Namespace:
System.ComponentModel
Assemblies:
System.dll, System.ComponentModel.EventBasedAsync.dll
Assemblies:
netstandard.dll, System.ComponentModel.EventBasedAsync.dll
Assembly:
System.ComponentModel.EventBasedAsync.dll
Assembly:
System.dll
Assembly:
netstandard.dll
Source:
BackgroundWorker.cs
Source:
BackgroundWorker.cs
Source:
BackgroundWorker.cs
Source:
BackgroundWorker.cs
Source:
BackgroundWorker.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets a value indicating whether the BackgroundWorker is running an asynchronous operation.

public:
 property bool IsBusy { bool get(); };
public bool IsBusy { get; }
[System.ComponentModel.Browsable(false)]
public bool IsBusy { get; }
member this.IsBusy : bool
[<System.ComponentModel.Browsable(false)>]
member this.IsBusy : bool
Public ReadOnly Property IsBusy As Boolean

Property Value

true, if the BackgroundWorker is running an asynchronous operation; otherwise, false.

Attributes

Examples

The following code example demonstrates how to use the IsBusy property to wait for completion of a BackgroundWorker operation. This code example is part of a larger example described in How to: Download a File in the Background.

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

Remarks

The BackgroundWorker starts an asynchronous operation when you call RunWorkerAsync.

Applies to

See also


Feedback

Was this page helpful?