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.
139
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
135
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
127
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
122
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
120
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
119
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
118
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
117
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
116
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
115
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
114
Nerdbank.Streams
Streams for full duplex in-proc communication, wrap a WebSocket, split a stream into multiple channels, etc.
113

Version Downloads Last updated
17.14.15 66 5/16/2025
17.14.2-alpha 61 3/13/2025
17.13.61 64 3/19/2025
17.13.2 81 2/16/2025
17.12.19 73 11/18/2024
17.11.20 79 8/14/2024
17.11.19-preview 87 7/3/2024
17.10.48 93 5/5/2024
17.10.41 86 5/31/2024
17.10.12-preview 94 5/5/2024
17.9.28 82 2/23/2024
17.9.1-alpha 92 12/8/2023
17.8.14 94 11/24/2023
17.7.35 97 11/18/2023
17.7.30 126 8/24/2023
17.7.1-preview 91 8/7/2023
17.6.40 89 5/19/2023
17.5.22 111 3/26/2023
17.5.21 99 5/19/2023
17.5.10-alpha 92 2/28/2023
17.4.33 90 3/15/2023
17.4.27 108 12/10/2022
17.3.48 94 12/10/2022
17.3.44 103 9/21/2022
17.3.1-alpha 96 9/21/2022
17.2.32 114 7/3/2022
17.2.20-alpha 94 7/3/2022
17.1.46 112 7/3/2022
17.0.64 127 7/3/2022
17.0.63 88 7/3/2022
17.0.46-alpha 99 7/3/2022
17.0.32-alpha 97 7/3/2022
17.0.26-alpha 104 7/3/2022
17.0.17-alpha 94 7/3/2022
17.0.15-alpha 91 7/3/2022
17.0.13-alpha 96 7/3/2022
16.10.56 87 7/3/2022
16.10.51-alpha 93 7/3/2022
16.9.60 101 7/3/2022
16.9.54 102 7/3/2022
16.9.51 84 7/3/2022
16.9.45-alpha 91 7/3/2022
16.8.55 104 7/3/2022
16.8.51 104 7/3/2022
16.8.50 88 7/3/2022
16.7.56 92 7/3/2022
16.7.54 110 7/3/2022
16.6.13 112 7/3/2022
16.5.132 101 7/3/2022
16.5.124-alpha 89 7/3/2022
16.5.119-alpha 103 7/3/2022
16.5.108-alpha 106 7/3/2022
16.4.45 111 7/3/2022
16.4.43 93 7/3/2022
16.4.39 109 7/3/2022
16.4.33 115 7/3/2022
16.4.16 102 7/3/2022
16.3.59 121 7/3/2022
16.3.52 105 7/3/2022
16.3.13 95 7/3/2022
16.3.1-alpha 107 7/3/2022
16.0.102 124 7/3/2022
16.0.96-beta 98 7/3/2022
16.0.82-beta 105 7/3/2022
15.8.209 116 7/3/2022
15.8.192 100 7/3/2022
15.8.168 104 7/3/2022
15.8.145 87 7/3/2022
15.8.132 125 7/3/2022
15.8.122 135 7/3/2022
15.8.99-rc 102 7/3/2022
15.8.95-rc 95 7/3/2022
15.8.81-beta 95 7/3/2022
15.8.72-beta 119 7/3/2022
15.8.47-beta 108 7/3/2022
15.8.46-beta 92 7/3/2022
15.7.23 95 7/3/2022
15.7.21 96 7/3/2022
15.7.18 103 7/3/2022
15.7.17 102 7/3/2022
15.7.15-preview 123 7/3/2022
15.6.56 86 7/3/2022
15.6.46 96 7/3/2022
15.6.44 103 7/3/2022
15.6.31 97 7/3/2022
15.6.11-beta 108 7/3/2022
15.5.32 111 7/3/2022
15.5.24 102 7/3/2022
15.5.13-beta 102 7/3/2022
15.5.11-beta 104 7/3/2022
15.5.5-beta 101 7/3/2022
15.4.4 114 7/3/2022
15.3.83 103 7/3/2022
15.3.35 96 7/3/2022
15.3.23 103 7/3/2022
15.3.20 92 7/3/2022
15.2.5 120 7/3/2022
15.0.240 115 7/3/2022
15.0.116-pre 112 7/3/2022
15.0.109-pre 93 7/3/2022
15.0.83-pre 134 7/3/2022
15.0.49-pre 116 7/3/2022
15.0.20-pre 97 7/3/2022
15.0.18-pre 114 7/3/2022
14.1.131 95 7/3/2022
14.1.114 112 7/3/2022
14.1.111 119 7/3/2022
14.0.51107 87 7/3/2022
14.0.51103 78 7/3/2022
14.0.50702 102 7/3/2022
14.0.50522-pre 95 7/3/2022
14.0.50417-pre 106 7/3/2022
12.2.0 114 7/3/2022
12.0.0 102 7/3/2022