AsyncBase Class

Implements the Windows Runtime asynchronous state machine.

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

Reference

Microsoft::WRL Namespace