Progress<T> Progress<T> Progress<T> Progress<T> Class


Provides an IProgress<T> that invokes callbacks for each reported progress value.

generic <typename T>
public ref class Progress : IProgress<T>
public class Progress<T> : IProgress<T>
type Progress<'T> = class
    interface IProgress<'T>
Public Class Progress(Of T)
Implements IProgress(Of T)

Type Parameters


Specifies the type of the progress report value.



Any handler provided to the constructor or event handlers registered with the ProgressChanged event are invoked through a SynchronizationContext instance captured when the instance is constructed. If there is no current SynchronizationContext at the time of construction, the callbacks will be invoked on the ThreadPool.

For more information and a code example, see the article Async in 4.5: Enabling Progress and Cancellation in Async APIs in the .NET Framework blog.


Progress<T>() Progress<T>() Progress<T>() Progress<T>()

Initializes the Progress<T> object.

Progress<T>(Action<T>) Progress<T>(Action<T>) Progress<T>(Action<T>) Progress<T>(Action<T>)

Initializes the Progress<T> object with the specified callback.


Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
OnReport(T) OnReport(T) OnReport(T) OnReport(T)

Reports a progress change.

ToString() ToString() ToString() ToString()

Returns a string that represents the current object.

(Inherited from Object)


ProgressChanged ProgressChanged ProgressChanged ProgressChanged

Raised for each reported progress value.

Explicit Interface Implementations

IProgress<T>.Report(T) IProgress<T>.Report(T) IProgress<T>.Report(T) IProgress<T>.Report(T)

Reports a progress change.

Applies to