Found 4,442 packages
Provides the IAsyncEnumerable<T> and IAsyncDisposable interfaces and helper types for .NET Standard 2.0. This package is not required starting with .NET Standard 2.1 and .NET Core 3.0.
Provides support for Language-Integrated Query (LINQ) over IAsyncEnumerable<T> sequences.
Asynchronous sink wrapper for Serilog.
A single-threaded async-compatible context.
Common helper methods for tasks as used in asynchronous programming.
Interactive Extensions Async Library used to express queries over asynchronous enumerable sequences.
Asynchronous coordination primitives.
Provides support classes and delegates for the event-based asynchronous pattern. Developers should prefer the classes in the System.Threading.Tasks package. Commonly Used Types: System.ComponentModel.AsyncCompletedEventArgs System.ComponentModel.AsyncCompletedEventHandler System.ComponentModel.ProgressChangedEventArgs System.ComponentModel.ProgressChangedEventHandler System.ComponentModel.AsyncOperation System.ComponentModel.AsyncOperationManager When using NuGet 3.x this package requires at least version 3.4.
Interfaces and utility methods for combining async with OOP.
High performance Redis client, incorporating both synchronous and asynchronous usage.
A helper library for the Task-Based Asynchronous Pattern (TAP).
Task wrappers for WaitHandles.
This package enables Visual Studio 2012 projects to use the new 'async' and 'await' keywords. This package also includes Task-based extension methods that allow using some of the existing asynchronous APIs with the new language keywords. Windows Phone Silverlight 8 projects can use this package to get access to async extension methods for the networking types. This package is not supported in Visual Studio 2010, and is only required for projects targeting .NET Framework 4.5, Windows 8, Windows Phone Silverlight 8, or Windows Phone 8.1 when consuming a library that uses this package. For known issues, please see: http://blogs.msdn.com/b/bclteam/p/asynctargetingpackkb.aspx. For more information on the async programming model, visit MSDN: http://msdn.microsoft.com/en-us/library/vstudio/hh191443.aspx. Supported Platforms: - .NET Framework 4 (with KB2468871) - Windows 8 - Windows Phone 8.1 - Windows Phone Silverlight 7.5 - Silverlight 4 - Portable Class Libraries
AsyncInterceptor is an extension to Castle DynamicProxy to simplify the development of interceptors for asynchronous methods.
Introduces IAsyncEnumerable, IAsyncEnumerator, ForEachAsync(), and ParallelForEachAsync() GitHub: https://github.com/Dasync/AsyncEnumerable PROBLEM SPACE Helps to (a) create an element provider, where producing an element can take a lot of time due to dependency on other asynchronous events (e.g. wait handles, network streams), and (b) a consumer that processes those element as soon as they are ready without blocking the thread (the processing is scheduled on a worker thread instead). EXAMPLE using Dasync.Collections; static IAsyncEnumerable<int> ProduceAsyncNumbers(int start, int end) { return new AsyncEnumerable<int>(async yield => { // Just to show that ReturnAsync can be used multiple times await yield.ReturnAsync(start); for (int number = start + 1; number <= end; number++) await yield.ReturnAsync(number); // You can break the enumeration loop with the following call: yield.Break(); // This won't be executed due to the loop break above await yield.ReturnAsync(12345); }); } // Just to compare with synchronous version of enumerator static IEnumerable<int> ProduceNumbers(int start, int end) { yield return start; for (int number = start + 1; number <= end; number++) yield return number; yield break; yield return 12345; } static async Task ConsumeNumbersAsync() { var asyncEnumerableCollection = ProduceAsyncNumbers(start: 1, end: 10); await asyncEnumerableCollection.ForEachAsync(async number => { await Console.Out.WriteLineAsync($"{number}"); }); } // Just to compare with synchronous version of enumeration static void ConsumeNumbers() { var enumerableCollection = ProduceNumbers(start: 1, end: 10); foreach (var number in enumerableCollection) { Console.Out.WriteLine($"{number}"); } }
AsyncFixer detects common async/await anti-patterns and, when possible, offers automatic fixes. It currently reports 6 categories of async/await misuse and provides code fixes for 3 of them. It has been validated against thousands of open-source C# projects and is designed to handle tricky real-world edge cases. Tool-friendly diagnostics support AI-assisted workflows even when a built-in code fix is not available.
A truly async MySQL ADO.NET provider, supporting MySQL Server, MariaDB, Amazon Aurora, Azure Database for MySQL, Google Cloud SQL, and more.
An asynchronous .NET library that allows you to lock based on a key (keyed semaphores), limiting concurrent threads sharing the same key to a specified number, with optional pooling for reducing memory allocations.
Extends Renci.SshNet to implement the task-based async pattern
Provides support for Language-Integrated Query (LINQ) over IAsyncQueryable<T> sequences with query providers.