Async synchronization primitives, async collections, TPL and dataflow extensions. The JoinableTaskFactory allows synchronously blocking the UI thread for async work. This package is applicable to any .NET application (not just Visual Studio).
$ dotnet add package Microsoft.VisualStudio.ThreadingAsync synchronization primitives, async collections, TPL and dataflow extensions. The JoinableTaskFactory allows synchronously blocking the UI thread for async work. This package is applicable to any .NET application (not just Visual Studio).
AsyncAutoResetEventAsyncBarrierAsyncCountdownEventAsyncManualResetEventAsyncReaderWriterLockAsyncSemaphoreReentrantSemaphoreAsyncEventHandlerAsyncLazy<T>AsyncLazyInitializerAsyncLocal<T>AsyncQueue<T>TaskScheduler to switch to it.
Switch to a background thread with await TaskScheduler.Default;Task with a timeoutTask with cancellationJoinableTaskFactory that allows you to schedule asynchronous or synchronous work
that does not deadlock with the UI thread even when the UI thread needs to
synchronously block on the result.