The Microsoft.VisualStudio.Threading is a xplat library that provides many threading and synchronization primitives used in Visual Studio and other applications.
Перейти к файлу
Andrew Arnott 715ba29b09
Add VSTHRD002 check for ValueTask sync blocking methods
2018-09-22 17:57:54 -07:00
.github/ISSUE_TEMPLATE Update bug template 2018-05-11 13:29:30 -07:00
azure-pipelines Switch to Azure Pipelines 2018-09-22 15:05:24 -07:00
doc Add VSTHRD002 check for ValueTask sync blocking methods 2018-09-22 17:57:54 -07:00
src Add VSTHRD002 check for ValueTask sync blocking methods 2018-09-22 17:57:54 -07:00
tools Stop downloading credential helper 2017-01-22 21:52:16 -08:00
.gitattributes Adds .gitattributes file. 2014-09-24 17:05:27 -07:00
.gitignore Ignore msbuild.binlog files 2018-02-18 20:52:15 -08:00
.vsts-ci.yml Switch to Azure Pipelines 2018-09-22 15:05:24 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md doc 2018-02-28 23:32:19 -08:00
LICENSE Add LICENSE file 2016-09-24 07:37:39 -07:00
README.md Switch to Azure Pipelines 2018-09-22 15:05:24 -07:00

README.md

Microsoft.VisualStudio.Threading

NuGet package Build Status Join the chat at https://gitter.im/vs-threading/Lobby

Analyzers: NuGet package

Features

  • Async versions of many threading synchronization primitives
    • AsyncAutoResetEvent
    • AsyncBarrier
    • AsyncCountdownEvent
    • AsyncManualResetEvent
    • AsyncReaderWriterLock
    • AsyncSemaphore
    • ReentrantSemaphore
  • Async versions of very common types
    • AsyncLazy<T>
    • AsyncLocal<T>
    • AsyncQueue<T>
    • AsyncEventHandler
  • Await extension methods
    • Await on a TaskScheduler to switch to it. Switch to a background thread with await TaskScheduler.Default;
    • Await on a Task with a timeout
    • Await on a Task with cancellation
  • JoinableTaskFactory 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.

Documentation

Supported platforms

  • .NET 4.5
  • .NET Standard 1.1
  • .NET Portable (Profile111)