JoinableTaskFactory::Run Method (Func<Task^>^)

 

Runs the specified asynchronous method.

Namespace:   Microsoft.VisualStudio.Threading
Assembly:  Microsoft.VisualStudio.Threading (in Microsoft.VisualStudio.Threading.dll)

public:
void Run(
	Func<Task^>^ asyncMethod
)

Parameters

asyncMethod
Type: System::Func<Task^>^

The asynchronous method to execute.

On the threadpool or Main thread, this method blocks the calling thread until all async operations in the delegate complete.


ThreadHelper.JoinableTaskFactory.Run(async delegate {
    // still on the threadpool or Main thread as before.
    await OperationAsync();
    // still on the threadpool or Main thread as before.
    await Task.Run(async delegate {
        // Now we're on a threadpool thread.
        await Task.Yield();
        // still on a threadpool thread.
    });
    // Now back on the Main thread (or threadpool thread if that's where we started).
});
Return to top
Show: