AsyncBase Class

Implements the Windows Runtime asynchronous state machine.

Syntax

template <
   typename TComplete,
   typename TProgress = Details::Nil,
   AsyncResultType resultType = SingleResult
>
class AsyncBase : public AsyncBase<TComplete, Details::Nil, resultType>;

template <
   typename TComplete,
   AsyncResultType resultType
>
class AsyncBase<TComplete, Details::Nil, resultType> : public Microsoft::WRL::Implements<IAsyncInfo>;

Parameters

TComplete
An event handler that is called when an asynchronous operation completes.

TProgress
An event handler that is called when a running asynchronous operation reports the current progress of the operation.

resultType
One of the AsyncResultType enumeration values. By default, SingleResult.

Members

Public Constructors

Name Description
AsyncBase::AsyncBase Constructor Initializes an instance of the AsyncBase class.

Public Methods

Name Description
AsyncBase::Cancel Method Cancels an asynchronous operation.
AsyncBase::Close Method Closes the asynchronous operation.
AsyncBase::FireCompletion Method Invokes the completion event handler, or resets the internal progress delegate.
AsyncBase::FireProgress Method Invokes the current progress event handler.
AsyncBase::get_ErrorCode Method Retrieves the error code for the current asynchronous operation.
AsyncBase::get_Id Method Retrieves the handle of the asynchronous operation.
AsyncBase::get_Status Method Retrieves a value that indicates the status of the asynchronous operation.
AsyncBase::GetOnComplete Method Copies the address of the current completion event handler to the specified variable.
AsyncBase::GetOnProgress Method Copies the address of the current progress event handler to the specified variable.
AsyncBase::put_Id Method Sets the handle of the asynchronous operation.
AsyncBase::PutOnComplete Method Sets the address of the completion event handler to the specified value.
AsyncBase::PutOnProgress Method Sets the address of the progress event handler to the specified value.
AsyncBase::Start Method Starts the asynchronous operation.

Protected Methods

Name Description
AsyncBase::CheckValidStateForDelegateCall Method Tests whether delegate properties can be modified in the current asynchronous state.
AsyncBase::CheckValidStateForResultsCall Method Tests whether the results of an asynchronous operation can be collected in the current asynchronous state.
AsyncBase::ContinueAsyncOperation Method Determines whether the asynchronous operation should continue processing or should halt.
AsyncBase::CurrentStatus Method Retrieves the status of the current asynchronous operation.
AsyncBase::ErrorCode Method Retrieves the error code for the current asynchronous operation.
AsyncBase::OnCancel Method When overridden in a derived class, cancels an asynchronous operation.
AsyncBase::OnClose Method When overridden in a derived class, closes an asynchronous operation.
AsyncBase::OnStart Method When overridden in a derived class, starts an asynchronous operation.
AsyncBase::TryTransitionToCompleted Method Indicates whether the current asynchronous operation has completed.
AsyncBase::TryTransitionToError Method Indicates whether the specified error code can modify the internal error state.

Inheritance Hierarchy

AsyncBase

AsyncBase

Requirements

Header: async.h

Namespace: Microsoft::WRL

See Also

Microsoft::WRL Namespace