Microsoft.VisualStudio.Threading 17.10.12-preview

Microsoft.VisualStudio.Threading

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).

Features

  • Async versions of many threading synchronization primitives
    • AsyncAutoResetEvent
    • AsyncBarrier
    • AsyncCountdownEvent
    • AsyncManualResetEvent
    • AsyncReaderWriterLock
    • AsyncSemaphore
    • ReentrantSemaphore
  • Async versions of very common types
    • AsyncEventHandler
    • AsyncLazy<T>
    • AsyncLazyInitializer
    • AsyncLocal<T>
    • AsyncQueue<T>
  • 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.

Showing the top 20 packages that depend on Microsoft.VisualStudio.Threading.

Packages Downloads
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
86
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
74
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
70
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
64
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
63
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
61
Microsoft.VisualStudio.Threading.Analyzers
Static code analyzer to detect common mistakes or potential issues on the C# code that uses Visual Studio SDK APIs.
60
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
58
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
57
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
56
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
55
Microsoft.VisualStudio.Threading.Analyzers
Static code analyzer to detect common mistakes or potential issues on the C# code that uses Visual Studio SDK APIs.
55
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
54

Version Downloads Last updated
17.14.2-alpha 15 3/13/2025
17.13.61 11 3/19/2025
17.13.2 26 2/16/2025
17.12.19 26 11/18/2024
17.11.20 28 8/14/2024
17.11.19-preview 34 7/3/2024
17.10.48 36 5/5/2024
17.10.41 30 5/31/2024
17.10.12-preview 39 5/5/2024
17.9.28 33 2/23/2024
17.9.1-alpha 43 12/8/2023
17.8.14 47 11/24/2023
17.7.35 45 11/18/2023
17.7.30 66 8/24/2023
17.7.1-preview 46 8/7/2023
17.6.40 48 5/19/2023
17.5.22 48 3/26/2023
17.5.21 42 5/19/2023
17.5.10-alpha 47 2/28/2023
17.4.33 46 3/15/2023
17.4.27 63 12/10/2022
17.3.48 50 12/10/2022
17.3.44 54 9/21/2022
17.3.1-alpha 55 9/21/2022
17.2.32 66 7/3/2022
17.2.20-alpha 47 7/3/2022
17.1.46 62 7/3/2022
17.0.64 80 7/3/2022
17.0.63 47 7/3/2022
17.0.46-alpha 55 7/3/2022
17.0.32-alpha 51 7/3/2022
17.0.26-alpha 60 7/3/2022
17.0.17-alpha 41 7/3/2022
17.0.15-alpha 48 7/3/2022
17.0.13-alpha 49 7/3/2022
16.10.56 48 7/3/2022
16.10.51-alpha 48 7/3/2022
16.9.60 49 7/3/2022
16.9.54 56 7/3/2022
16.9.51 45 7/3/2022
16.9.45-alpha 49 7/3/2022
16.8.55 54 7/3/2022
16.8.51 57 7/3/2022
16.8.50 48 7/3/2022
16.7.56 49 7/3/2022
16.7.54 54 7/3/2022
16.6.13 75 7/3/2022
16.5.132 50 7/3/2022
16.5.124-alpha 49 7/3/2022
16.5.119-alpha 55 7/3/2022
16.5.108-alpha 55 7/3/2022
16.4.45 52 7/3/2022
16.4.43 49 7/3/2022
16.4.39 60 7/3/2022
16.4.33 69 7/3/2022
16.4.16 54 7/3/2022
16.3.59 68 7/3/2022
16.3.52 54 7/3/2022
16.3.13 47 7/3/2022
16.3.1-alpha 59 7/3/2022
16.0.102 61 7/3/2022
16.0.96-beta 51 7/3/2022
16.0.82-beta 64 7/3/2022
15.8.209 64 7/3/2022
15.8.192 49 7/3/2022
15.8.168 56 7/3/2022
15.8.145 44 7/3/2022
15.8.132 64 7/3/2022
15.8.122 76 7/3/2022
15.8.99-rc 54 7/3/2022
15.8.95-rc 48 7/3/2022
15.8.81-beta 54 7/3/2022
15.8.72-beta 72 7/3/2022
15.8.47-beta 65 7/3/2022
15.8.46-beta 51 7/3/2022
15.7.23 51 7/3/2022
15.7.21 51 7/3/2022
15.7.18 48 7/3/2022
15.7.17 51 7/3/2022
15.7.15-preview 63 7/3/2022
15.6.56 47 7/3/2022
15.6.46 53 7/3/2022
15.6.44 52 7/3/2022
15.6.31 54 7/3/2022
15.6.11-beta 62 7/3/2022
15.5.32 61 7/3/2022
15.5.24 50 7/3/2022
15.5.13-beta 60 7/3/2022
15.5.11-beta 43 7/3/2022
15.5.5-beta 47 7/3/2022
15.4.4 54 7/3/2022
15.3.83 41 7/3/2022
15.3.35 53 7/3/2022
15.3.23 55 7/3/2022
15.3.20 44 7/3/2022
15.2.5 67 7/3/2022
15.0.240 60 7/3/2022
15.0.116-pre 54 7/3/2022
15.0.109-pre 45 7/3/2022
15.0.83-pre 85 7/3/2022
15.0.49-pre 62 7/3/2022
15.0.20-pre 52 7/3/2022
15.0.18-pre 56 7/3/2022
14.1.131 51 7/3/2022
14.1.114 57 7/3/2022
14.1.111 58 7/3/2022
14.0.51107 43 7/3/2022
14.0.51103 39 7/3/2022
14.0.50702 56 7/3/2022
14.0.50522-pre 49 7/3/2022
14.0.50417-pre 54 7/3/2022
12.2.0 62 7/3/2022
12.0.0 58 7/3/2022