Microsoft Bcl AsyncInterfaces
NuGet Microsoft.Bcl.AsyncInterfaces package re-bundled for convenient consumption and dependency management.
About this mod Author’s original text
About
As of C# 8, the C# language has support for producing and consuming asynchronous iterators. The library types in support of those features are available in.NET Core 3.0 and newer as well as in.NET Standard 2.1. This library provides the necessary definitions of those types to support these language features on.NET Framework and on.NET Standard 2.0. This library is not necessary nor recommended when targeting versions of.NET that include the relevant support.
Key Features
- Enables the use of C# async iterators on older.NET platforms
How to Use
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
internal static class Program
{
private static async Task Main()
{
Console.WriteLine("Starting...");
await foreach (var value in GetValuesAsync())
{
Console.WriteLine(value);
}
Console.WriteLine("Finished!");
static async IAsyncEnumerable GetValuesAsync()
{
for (int i = 0; i
The main types provided by this library are:
- IAsyncEnumerable
- IAsyncEnumerator
- IAsyncDisposable
Additional Documentation
- C# Feature Specification
- Walkthrough article
Feedback & Contributing
Microsoft.Bcl.AsyncInterfaces is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.