Table of Contents

WhileResultAsync Method

Definition

WhileResultAsync<TReader, TElement, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, CancellationToken, Task<TResult>>, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, CancellationToken, Task<TResult>> worker, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

TResult

The type of the return value of the function delegate worker.

WhileResultAsync<TReader, TElement, T, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, T, CancellationToken, Task<TResult>>, T, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, T, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, T, CancellationToken, Task<TResult>> worker, T arg, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, T, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

arg T

The parameter of the delegate worker.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

T

The type of the parameter of the delegate worker.

TResult

The type of the return value of the function delegate worker.

WhileResultAsync<TReader, TElement, T1, T2, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, T1, T2, CancellationToken, Task<TResult>>, T1, T2, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, T1, T2, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, T1, T2, CancellationToken, Task<TResult>> worker, T1 arg1, T2 arg2, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, T1, T2, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

arg1 T1

The first parameter of the delegate worker.

arg2 T2

The second parameter of the delegate worker.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

T1

The type of the first parameter of the delegate worker.

T2

The type of the second parameter of the delegate worker.

TResult

The type of the return value of the function delegate worker.

WhileResultAsync<TReader, TElement, T1, T2, T3, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, T1, T2, T3, CancellationToken, Task<TResult>>, T1, T2, T3, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, T1, T2, T3, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, T1, T2, T3, CancellationToken, Task<TResult>> worker, T1 arg1, T2 arg2, T3 arg3, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, T1, T2, T3, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

arg1 T1

The first parameter of the delegate worker.

arg2 T2

The second parameter of the delegate worker.

arg3 T3

The third parameter of the delegate worker.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

T1

The type of the first parameter of the delegate worker.

T2

The type of the second parameter of the delegate worker.

T3

The type of the third parameter of the delegate worker.

TResult

The type of the return value of the function delegate worker.

WhileResultAsync<TReader, TElement, T1, T2, T3, T4, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, T1, T2, T3, T4, CancellationToken, Task<TResult>>, T1, T2, T3, T4, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, T1, T2, T3, T4, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, T1, T2, T3, T4, CancellationToken, Task<TResult>> worker, T1 arg1, T2 arg2, T3 arg3, T4 arg4, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, T1, T2, T3, T4, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

arg1 T1

The first parameter of the delegate worker.

arg2 T2

The second parameter of the delegate worker.

arg3 T3

The third parameter of the delegate worker.

arg4 T4

The fourth parameter of the delegate worker.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

T1

The type of the first parameter of the delegate worker.

T2

The type of the second parameter of the delegate worker.

T3

The type of the third parameter of the delegate worker.

T4

The type of the fourth parameter of the delegate worker.

TResult

The type of the return value of the function delegate worker.

WhileResultAsync<TReader, TElement, T1, T2, T3, T4, T5, TResult>(TReader, Func<Task<bool>>, Func<TReader, TElement>, Func<TElement, T1, T2, T3, T4, T5, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, Action<AsyncWorkloadOptions>)

Executes a parallel while loop where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

public static Task<IReadOnlyCollection<TResult>> WhileResultAsync<TReader, TElement, T1, T2, T3, T4, T5, TResult>(TReader reader, Func<Task<bool>> condition, Func<TReader, TElement> provider, Func<TElement, T1, T2, T3, T4, T5, CancellationToken, Task<TResult>> worker, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, Action<AsyncWorkloadOptions> setup = null)

Parameters

reader TReader

The reader that provides forward-only access to data.

condition Func<Task<bool>>

The function delegate that is responsible for the while loop condition.

provider Func<TReader, TElement>

The function delegate that provides data from the specified reader.

worker Func<TElement, T1, T2, T3, T4, T5, CancellationToken, Task<TResult>>

The delegate that will perform work while condition evaluates true.

arg1 T1

The first parameter of the delegate worker.

arg2 T2

The second parameter of the delegate worker.

arg3 T3

The third parameter of the delegate worker.

arg4 T4

The fourth parameter of the delegate worker.

arg5 T5

The fifth parameter of the delegate worker.

setup Action<AsyncWorkloadOptions>

The AsyncWorkloadOptions which may be configured.

Returns

Task<IReadOnlyCollection<TResult>>

A Task that represents the asynchronous operation. The task result contains an IReadOnlyCollection<T> where the return value of the function delegate worker is stored in the same order as the while loop evaluates true.

Type Parameters

TReader

The type of the reader that provides forward-only access to data.

TElement

The type of the result provided by reader.

T1

The type of the first parameter of the delegate worker.

T2

The type of the second parameter of the delegate worker.

T3

The type of the third parameter of the delegate worker.

T4

The type of the fourth parameter of the delegate worker.

T5

The type of the fifth parameter of the delegate worker.

TResult

The type of the return value of the function delegate worker.