Table of Contents

WithFuncAsync Method

Definition

Namespace
Cuemon.Diagnostics
Assemblies
Cuemon.Diagnostics.dll
Source
src/Cuemon.Diagnostics/TimeMeasure.Async.cs

WithFuncAsync<TResult>(Func<CancellationToken, Task<TResult>>, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<TResult>(Func<CancellationToken, Task<TResult>> function, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<CancellationToken, Task<TResult>>

The function delegate to time measure.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

TResult

The type of the return value of the function delegate.

WithFuncAsync<T, TResult>(Func<T, CancellationToken, Task<TResult>>, T, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T, TResult>(Func<T, CancellationToken, Task<TResult>> function, T arg, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg T

The parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T

The type of the parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, TResult>(Func<T1, T2, CancellationToken, Task<TResult>>, T1, T2, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, TResult>(Func<T1, T2, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, TResult>(Func<T1, T2, T3, CancellationToken, Task<TResult>>, T1, T2, T3, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, TResult>(Func<T1, T2, T3, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, TResult>(Func<T1, T2, T3, T4, CancellationToken, Task<TResult>>, T1, T2, T3, T4, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, TResult>(Func<T1, T2, T3, T4, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, TResult>(Func<T1, T2, T3, T4, T5, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, TResult>(Func<T1, T2, T3, T4, T5, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

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

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, T6, TResult>(Func<T1, T2, T3, T4, T5, T6, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, T6, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, T6, TResult>(Func<T1, T2, T3, T4, T5, T6, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, T5, T6, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

arg6 T6

The sixth parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

T6

The type of the sixth parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, T6, T7, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, T5, T6, T7, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

arg6 T6

The sixth parameter of the function delegate.

arg7 T7

The seventh parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

T6

The type of the sixth parameter of the function delegate.

T7

The type of the seventh parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, T6, T7, T8, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, T5, T6, T7, T8, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

arg6 T6

The sixth parameter of the function delegate.

arg7 T7

The seventh parameter of the function delegate.

arg8 T8

The eighth parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

T6

The type of the sixth parameter of the function delegate.

T7

The type of the seventh parameter of the function delegate.

T8

The type of the eighth parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

arg6 T6

The sixth parameter of the function delegate.

arg7 T7

The seventh parameter of the function delegate.

arg8 T8

The eighth parameter of the function delegate.

arg9 T9

The ninth parameter of the function delegate .

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

T6

The type of the sixth parameter of the function delegate.

T7

The type of the seventh parameter of the function delegate.

T8

The type of the eighth parameter of the function delegate.

T9

The type of the ninth parameter of the function delegate.

TResult

The type of the return value of the function delegate.

WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CancellationToken, Task<TResult>>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, Action<AsyncTimeMeasureOptions>)

Profile and time measure the specified function delegate.

public static Task<TimeMeasureProfiler<TResult>> WithFuncAsync<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CancellationToken, Task<TResult>> function, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, Action<AsyncTimeMeasureOptions> setup = null)

Parameters

function Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, CancellationToken, Task<TResult>>

The function delegate to time measure.

arg1 T1

The first parameter of the function delegate.

arg2 T2

The second parameter of the function delegate.

arg3 T3

The third parameter of the function delegate.

arg4 T4

The fourth parameter of the function delegate.

arg5 T5

The fifth parameter of the function delegate.

arg6 T6

The sixth parameter of the function delegate.

arg7 T7

The seventh parameter of the function delegate.

arg8 T8

The eighth parameter of the function delegate.

arg9 T9

The ninth parameter of the function delegate .

arg10 T10

The tenth parameter of the function delegate.

setup Action<AsyncTimeMeasureOptions>

The AsyncTimeMeasureOptions which may be configured.

Returns

Task<TimeMeasureProfiler<TResult>>

A task that represents the asynchronous operation. The task result contains a TimeMeasureProfiler<TResult> with the result of the time measuring and the encapsulated function delegate.

Type Parameters

T1

The type of the first parameter of the function delegate.

T2

The type of the second parameter of the function delegate.

T3

The type of the third parameter of the function delegate.

T4

The type of the fourth parameter of the function delegate.

T5

The type of the fifth parameter of the function delegate.

T6

The type of the sixth parameter of the function delegate.

T7

The type of the seventh parameter of the function delegate.

T8

The type of the eighth parameter of the function delegate.

T9

The type of the ninth parameter of the function delegate.

T10

The type of the tenth parameter of the function delegate.

TResult

The type of the return value of the function delegate.