Table of Contents

Class EnumerableExtensionsAsync

Namespace
Tharga.Toolkit
Assembly
Tharga.Toolkit.dll

Async extension methods for IAsyncEnumerable<T>.

public static class EnumerableExtensionsAsync
Inheritance
EnumerableExtensionsAsync
Inherited Members

Methods

RandomOrderAsync<T>(IAsyncEnumerable<T>, CancellationToken)

Returns the elements of an async sequence in random order using Fisher-Yates shuffle. Materializes the full sequence before shuffling.

public static IAsyncEnumerable<T> RandomOrderAsync<T>(this IAsyncEnumerable<T> values, CancellationToken cancellationToken = default)

Parameters

values IAsyncEnumerable<T>
cancellationToken CancellationToken

Returns

IAsyncEnumerable<T>

Type Parameters

T

TakeRandomAsync<T>(IAsyncEnumerable<T>, CancellationToken)

Selects a random element from an async sequence using reservoir sampling.

public static Task<T> TakeRandomAsync<T>(this IAsyncEnumerable<T> values, CancellationToken cancellationToken = default)

Parameters

values IAsyncEnumerable<T>
cancellationToken CancellationToken

Returns

Task<T>

Type Parameters

T