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...
More information
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....
More information
When using dependency injection and async-await pattern it is possible to end up with an interface with a method that returns a Task. If this interface method is used in a synchronous method there is a likelihood that it will erroneously be run as a fire and forget method. In this situation this...
More information
AsyncFixer helps developers in finding and correcting common async/await misuses (i.e., anti-patterns). It currently detects 5 common kinds of async/await misuses and fixes 3 of them via program transformations. AsyncFixer has been tested with thousands of open-source C# projects and successfully...
More information
The Execution Context Scoping package adds the 'Execution Context Scope' lifestyle, which allows instances to live within an explicitly defined execution context scope (or logical call context) and get disposed when this scope ends. This scope allows flowing through asynchronous method calls.
A C# lock replacement for async/await, supporting recursion/re-entrance and asynchronous waits. Handles async recursion correctly - note that Nito.AsyncEx does not!
Extensions for System.Threading.Tasks
Includes extension methods to safely fire-and-forget a Task and/or a ValueTask
Includes WeakEventManger which avoids memory leaks when events are not unsubscribed
Asyncify-CSharp is an analyzer and codefix that allows you to quickly update your code to use the Task Asynchronous Programming model. This model, introduced in C# 5, adds an intuitive way of handling asynchronous calls within C#.
The analyzer allows large codebases to be easily modified to use the...
More information
Enable using the new Value Tuple structure to write elegant code that allows async methods to be fired in parallel despite having different return types
var (result1, result2) = await (GetStringAsync(), GetGuidAsync());
Based on the work of Joseph Musser https://github.com/jnm2
Free yourself from async void!
TaskMonitor is a task wrapper component helping you to deal with "fire and forget" Task (non awaited task) by implementing async/await best practices.
Featuring:
* Safe execution of your non awaited tasks
* Delegates for all states of the loaded task
* Builder...
More information
Async Extensions for ICommand
Includes AsyncCommand and IAsyncCommand which allows ICommand to safely be used asynchronously with Task.
Includes AsyncValueCommand and IAsyncValueCommand which allows ICommand to safely be used asynchronously with ValueTask