VsTaskLibraryHelper.RunAsyncAsVsTask<T>(JoinableTaskFactory, VsTaskRunContext, Func<CancellationToken,Task<T>>) Método

Definição

Cria um IVsTask para rastrear uma operação assíncrona cancelável.

public:
generic <typename T>
[System::Runtime::CompilerServices::Extension]
 static Microsoft::VisualStudio::Shell::Interop::IVsTask ^ RunAsyncAsVsTask(Microsoft::VisualStudio::Threading::JoinableTaskFactory ^ joinableTaskFactory, Microsoft::VisualStudio::Shell::VsTaskRunContext priority, Func<System::Threading::CancellationToken, System::Threading::Tasks::Task<T> ^> ^ asyncMethod);
public static Microsoft.VisualStudio.Shell.Interop.IVsTask RunAsyncAsVsTask<T> (this Microsoft.VisualStudio.Threading.JoinableTaskFactory joinableTaskFactory, Microsoft.VisualStudio.Shell.VsTaskRunContext priority, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<T>> asyncMethod);
static member RunAsyncAsVsTask : Microsoft.VisualStudio.Threading.JoinableTaskFactory * Microsoft.VisualStudio.Shell.VsTaskRunContext * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<'T>> -> Microsoft.VisualStudio.Shell.Interop.IVsTask
<Extension()>
Public Function RunAsyncAsVsTask(Of T) (joinableTaskFactory As JoinableTaskFactory, priority As VsTaskRunContext, asyncMethod As Func(Of CancellationToken, Task(Of T))) As IVsTask

Parâmetros de tipo

T

O tipo de valor retornado pela operação assíncrona.

Parâmetros

joinableTaskFactory
JoinableTaskFactory

A fábrica a ser usada para criar a tarefa.

priority
VsTaskRunContext

A prioridade com a qual agendar qualquer trabalho no thread da interface do usuário, quando e se SwitchToMainThreadAsync(CancellationToken) for chamado.

asyncMethod
Func<CancellationToken,Task<T>>

O método que, quando executado, iniciará a operação assíncrona.

Retornos

IVsTask

Uma instância IVsTask.

Comentários

As exceções geradas pelo delegado são capturadas pelo retornado JoinableTask . Observe que o asyncMethod delegado começa sua execução no thread do chamador e deve chamar explicitamente SwitchToMainThreadAsync se o thread principal é desejado.

Aplica-se a