UniTask Struct

| UniTask (original) (raw)

Namespace: Cysharp.Threading.Tasks
Assembly: cs.temp.dll.dll

Lightweight unity specified task-like object.

public readonly struct UniTask

Members

Constructors

Name Description
UniTask(IUniTaskSource, Int16)

Fields

Name Description
CompletedTask

Properties

Name Description
Status

Methods

Name Description
Action(Func) helper of create add UniTaskVoid to delegate. For example: FooAction = UniTask.Action(async () => { /* */ })
Action(Func<CancellationToken, UniTaskVoid>, CancellationToken) helper of create add UniTaskVoid to delegate.
Action(T, Func<T, UniTaskVoid>) helper of create add UniTaskVoid to delegate.
AsAsyncUnitUniTask()
Create(Func)
Create(Func<CancellationToken, UniTask>, CancellationToken)
Create(T, Func<T, UniTask>)
Create(Func<UniTask>)
Defer(Func) Defer the task creation just before call await.
Defer(TState, Func<TState, UniTask>) Defer the task creation just before call await.
Defer(Func<UniTask>) Defer the task creation just before call await.
Defer<TState, TResult>(TState, Func<TState, UniTask>) Defer the task creation just before call await.
Delay(Int32, DelayType, PlayerLoopTiming, CancellationToken, Boolean)
Delay(Int32, Boolean, PlayerLoopTiming, CancellationToken, Boolean)
Delay(TimeSpan, DelayType, PlayerLoopTiming, CancellationToken, Boolean)
Delay(TimeSpan, Boolean, PlayerLoopTiming, CancellationToken, Boolean)
DelayFrame(Int32, PlayerLoopTiming, CancellationToken, Boolean)
FromCanceled(CancellationToken)
FromCanceled(CancellationToken)
FromException(Exception)
FromException(Exception)
FromResult(T)
GetAwaiter()
Lazy(Func)
Lazy(Func<UniTask>)
Never(CancellationToken) Never complete.
Never(CancellationToken) Never complete.
NextFrame() Similar as UniTask.Yield but guaranteed run on next frame.
NextFrame(PlayerLoopTiming) Similar as UniTask.Yield but guaranteed run on next frame.
NextFrame(PlayerLoopTiming, CancellationToken, Boolean) Similar as UniTask.Yield but guaranteed run on next frame.
NextFrame(CancellationToken, Boolean) Similar as UniTask.Yield but guaranteed run on next frame.
Preserve() Memoizing inner IValueTaskSource. The result UniTask can await multiple.
ReturnToCurrentSynchronizationContext(Boolean, CancellationToken)
ReturnToSynchronizationContext(SynchronizationContext, CancellationToken)
Run(Action, Boolean, CancellationToken)
Run(Action, Object, Boolean, CancellationToken)
Run(Func, Boolean, CancellationToken)
Run(Func<Object, UniTask>, Object, Boolean, CancellationToken)
Run(Func, Boolean, CancellationToken)
Run(Func<UniTask>, Boolean, CancellationToken)
Run(Func<Object, T>, Object, Boolean, CancellationToken)
Run(Func<Object, UniTask>, Object, Boolean, CancellationToken)
RunOnThreadPool(Action, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Action, Object, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func<Object, UniTask>, Object, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func<UniTask>, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func<Object, T>, Object, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
RunOnThreadPool(Func<Object, UniTask>, Object, Boolean, CancellationToken) Run action on the threadPool and return to main thread if configureAwait = true.
SuppressCancellationThrow() returns (bool IsCanceled) instead of throws OperationCanceledException.
SwitchToSynchronizationContext(SynchronizationContext, CancellationToken)
SwitchToTaskPool() Note: use SwitchToThreadPool is recommended.
SwitchToThreadPool()
ToCoroutine(Func)
ToString()
Void(Func) helper of fire and forget void action.
Void(Func<CancellationToken, UniTaskVoid>, CancellationToken) helper of fire and forget void action.
Void(Func<T, UniTaskVoid>, T) helper of fire and forget void action.
WaitForEndOfFrame()
WaitForEndOfFrame(MonoBehaviour)
WaitForEndOfFrame(MonoBehaviour, CancellationToken, Boolean)
WaitForEndOfFrame(CancellationToken, Boolean)
WaitForFixedUpdate() Same as UniTask.Yield(PlayerLoopTiming.LastFixedUpdate).
WaitForFixedUpdate(CancellationToken, Boolean) Same as UniTask.Yield(PlayerLoopTiming.LastFixedUpdate, cancellationToken).
WaitForSeconds(Int32, Boolean, PlayerLoopTiming, CancellationToken, Boolean)
WaitForSeconds(Single, Boolean, PlayerLoopTiming, CancellationToken, Boolean)
WaitUntil(Func, PlayerLoopTiming, CancellationToken, Boolean)
WaitUntil(T, Func<T, Boolean>, PlayerLoopTiming, CancellationToken, Boolean)
WaitUntilCanceled(CancellationToken, PlayerLoopTiming, Boolean)
WaitUntilValueChanged<T, U>(T, Func<T, U>, PlayerLoopTiming, IEqualityComparer, CancellationToken, Boolean)
WaitWhile(Func, PlayerLoopTiming, CancellationToken, Boolean)
WaitWhile(T, Func<T, Boolean>, PlayerLoopTiming, CancellationToken, Boolean)
WhenAll(UniTask[])
WhenAll(IEnumerable)
WhenAll(UniTask[])
WhenAll(IEnumerable<UniTask>)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2>(UniTask, UniTask)
WhenAll<T1, T2, T3>(UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4>(UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5>(UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny(UniTask[]) Return value is winArgumentIndex
WhenAny(IEnumerable) Return value is winArgumentIndex
WhenAny(UniTask, UniTask)
WhenAny(UniTask[])
WhenAny(IEnumerable<UniTask>)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2>(UniTask, UniTask)
WhenAny<T1, T2, T3>(UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4>(UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5>(UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)
WhenEach(UniTask[])
WhenEach(IEnumerable<UniTask>)
Yield()
Yield(PlayerLoopTiming)
Yield(PlayerLoopTiming, CancellationToken, Boolean)
Yield(CancellationToken, Boolean)

Constructors

UniTask(IUniTaskSource, Int16)

public UniTask(IUniTaskSource source, short token)
Parameters

source IUniTaskSource

token System.Int16

Fields

CompletedTask

public static readonly UniTask CompletedTask
Field Value

UniTask

Properties

Status

public readonly UniTaskStatus Status { get; }
Property Value

UniTaskStatus

Methods

Action(Func)

helper of create add UniTaskVoid to delegate. For example: FooAction = UniTask.Action(async () => { /* */ })

public static Action Action(Func<UniTaskVoid> asyncAction)
Parameters

asyncAction System.Func<UniTaskVoid>

Returns

System.Action

Action(Func<CancellationToken, UniTaskVoid>, CancellationToken)

helper of create add UniTaskVoid to delegate.

public static Action Action(Func<CancellationToken, UniTaskVoid> asyncAction, CancellationToken cancellationToken)
Parameters

asyncAction System.Func<System.Threading.CancellationToken, UniTaskVoid>

cancellationToken System.Threading.CancellationToken

Returns

System.Action

Action(T, Func<T, UniTaskVoid>)

helper of create add UniTaskVoid to delegate.

public static Action Action<T>(T state, Func<T, UniTaskVoid> asyncAction)
Parameters

state T

asyncAction System.Func<T, UniTaskVoid>

Returns

System.Action

Type Parameters

T

AsAsyncUnitUniTask()

public readonly UniTask<AsyncUnit> AsAsyncUnitUniTask()
Returns

UniTask<AsyncUnit>

Create(Func)

public static UniTask Create(Func<UniTask> factory)
Parameters

factory System.Func<UniTask>

Returns

UniTask

Create(Func<CancellationToken, UniTask>, CancellationToken)

public static UniTask Create(Func<CancellationToken, UniTask> factory, CancellationToken cancellationToken)
Parameters

factory System.Func<System.Threading.CancellationToken, UniTask>

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Create(T, Func<T, UniTask>)

public static UniTask Create<T>(T state, Func<T, UniTask> factory)
Parameters

state T

factory System.Func<T, UniTask>

Returns

UniTask

Type Parameters

T

Create(Func<UniTask>)

public static UniTask<T> Create<T>(Func<UniTask<T>> factory)
Parameters

factory System.Func<UniTask>

Returns

UniTask

Type Parameters

T

Defer(Func)

Defer the task creation just before call await.

public static UniTask Defer(Func<UniTask> factory)
Parameters

factory System.Func<UniTask>

Returns

UniTask

Defer(TState, Func<TState, UniTask>)

Defer the task creation just before call await.

public static UniTask Defer<TState>(TState state, Func<TState, UniTask> factory)
Parameters

state TState

factory System.Func<TState, UniTask>

Returns

UniTask

Type Parameters

TState

Defer(Func<UniTask>)

Defer the task creation just before call await.

public static UniTask<T> Defer<T>(Func<UniTask<T>> factory)
Parameters

factory System.Func<UniTask>

Returns

UniTask

Type Parameters

T

Defer<TState, TResult>(TState, Func<TState, UniTask>)

Defer the task creation just before call await.

public static UniTask<TResult> Defer<TState, TResult>(TState state, Func<TState, UniTask<TResult>> factory)
Parameters

state TState

factory System.Func<TState, UniTask>

Returns

UniTask

Type Parameters

TState

TResult

Delay(Int32, DelayType, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask Delay(int millisecondsDelay, DelayType delayType, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

millisecondsDelay System.Int32

delayType DelayType

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Delay(Int32, Boolean, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask Delay(int millisecondsDelay, bool ignoreTimeScale = false, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

millisecondsDelay System.Int32

ignoreTimeScale System.Boolean

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Delay(TimeSpan, DelayType, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask Delay(TimeSpan delayTimeSpan, DelayType delayType, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

delayTimeSpan System.TimeSpan

delayType DelayType

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Delay(TimeSpan, Boolean, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask Delay(TimeSpan delayTimeSpan, bool ignoreTimeScale = false, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

delayTimeSpan System.TimeSpan

ignoreTimeScale System.Boolean

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

DelayFrame(Int32, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask DelayFrame(int delayFrameCount, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

delayFrameCount System.Int32

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

FromCanceled(CancellationToken)

public static UniTask FromCanceled(CancellationToken cancellationToken = default(CancellationToken))
Parameters

cancellationToken System.Threading.CancellationToken

Returns

UniTask

FromCanceled(CancellationToken)

public static UniTask<T> FromCanceled<T>(CancellationToken cancellationToken = default(CancellationToken))
Parameters

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

FromException(Exception)

public static UniTask FromException(Exception ex)
Parameters

ex System.Exception

Returns

UniTask

FromException(Exception)

public static UniTask<T> FromException<T>(Exception ex)
Parameters

ex System.Exception

Returns

UniTask

Type Parameters

T

FromResult(T)

public static UniTask<T> FromResult<T>(T value)
Parameters

value T

Returns

UniTask

Type Parameters

T

GetAwaiter()

public readonly UniTask.Awaiter GetAwaiter()
Returns

UniTask.Awaiter

Lazy(Func)

public static AsyncLazy Lazy(Func<UniTask> factory)
Parameters

factory System.Func<UniTask>

Returns

AsyncLazy

Lazy(Func<UniTask>)

public static AsyncLazy<T> Lazy<T>(Func<UniTask<T>> factory)
Parameters

factory System.Func<UniTask>

Returns

AsyncLazy

Type Parameters

T

Never(CancellationToken)

Never complete.

public static UniTask Never(CancellationToken cancellationToken)
Parameters

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Never(CancellationToken)

Never complete.

public static UniTask<T> Never<T>(CancellationToken cancellationToken)
Parameters

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

NextFrame()

Similar as UniTask.Yield but guaranteed run on next frame.

public static UniTask NextFrame()
Returns

UniTask

NextFrame(PlayerLoopTiming)

Similar as UniTask.Yield but guaranteed run on next frame.

public static UniTask NextFrame(PlayerLoopTiming timing)
Parameters

timing PlayerLoopTiming

Returns

UniTask

NextFrame(PlayerLoopTiming, CancellationToken, Boolean)

Similar as UniTask.Yield but guaranteed run on next frame.

public static UniTask NextFrame(PlayerLoopTiming timing, CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

NextFrame(CancellationToken, Boolean)

Similar as UniTask.Yield but guaranteed run on next frame.

public static UniTask NextFrame(CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Preserve()

Memoizing inner IValueTaskSource. The result UniTask can await multiple.

public readonly UniTask Preserve()
Returns

UniTask

ReturnToCurrentSynchronizationContext(Boolean, CancellationToken)

public static ReturnToSynchronizationContext ReturnToCurrentSynchronizationContext(bool dontPostWhenSameContext = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

dontPostWhenSameContext System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

ReturnToSynchronizationContext

ReturnToSynchronizationContext(SynchronizationContext, CancellationToken)

public static ReturnToSynchronizationContext ReturnToSynchronizationContext(SynchronizationContext synchronizationContext, CancellationToken cancellationToken = default(CancellationToken))
Parameters

synchronizationContext System.Threading.SynchronizationContext

cancellationToken System.Threading.CancellationToken

Returns

ReturnToSynchronizationContext

Run(Action, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask Run(Action action, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Action

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Run(Action, Object, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask Run(Action<object> action, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Action<System.Object>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Run(Func, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask Run(Func<UniTask> action, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Func<UniTask>

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Run(Func<Object, UniTask>, Object, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask Run(Func<object, UniTask> action, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Func<System.Object, UniTask>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Run(Func, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask<T> Run<T>(Func<T> func, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

Run(Func<UniTask>, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask<T> Run<T>(Func<UniTask<T>> func, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<UniTask>

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

Run(Func<Object, T>, Object, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask<T> Run<T>(Func<object, T> func, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<System.Object, T>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

Run(Func<Object, UniTask>, Object, Boolean, CancellationToken)

[Obsolete("UniTask.Run is similar as Task.Run, it uses ThreadPool. For equivalent behaviour, use UniTask.RunOnThreadPool instead. If you don't want to use ThreadPool, you can use UniTask.Void(async void) or UniTask.Create(async UniTask) too.")]
public static UniTask<T> Run<T>(Func<object, UniTask<T>> func, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<System.Object, UniTask>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

RunOnThreadPool(Action, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask RunOnThreadPool(Action action, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Action

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

RunOnThreadPool(Action, Object, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask RunOnThreadPool(Action<object> action, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Action<System.Object>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

RunOnThreadPool(Func, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask RunOnThreadPool(Func<UniTask> action, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Func<UniTask>

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

RunOnThreadPool(Func<Object, UniTask>, Object, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask RunOnThreadPool(Func<object, UniTask> action, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

action System.Func<System.Object, UniTask>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

RunOnThreadPool(Func, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask<T> RunOnThreadPool<T>(Func<T> func, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

RunOnThreadPool(Func<UniTask>, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask<T> RunOnThreadPool<T>(Func<UniTask<T>> func, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<UniTask>

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

RunOnThreadPool(Func<Object, T>, Object, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask<T> RunOnThreadPool<T>(Func<object, T> func, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<System.Object, T>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

RunOnThreadPool(Func<Object, UniTask>, Object, Boolean, CancellationToken)

Run action on the threadPool and return to main thread if configureAwait = true.

public static async UniTask<T> RunOnThreadPool<T>(Func<object, UniTask<T>> func, object state, bool configureAwait = true, CancellationToken cancellationToken = default(CancellationToken))
Parameters

func System.Func<System.Object, UniTask>

state System.Object

configureAwait System.Boolean

cancellationToken System.Threading.CancellationToken

Returns

UniTask

Type Parameters

T

SuppressCancellationThrow()

returns (bool IsCanceled) instead of throws OperationCanceledException.

public readonly UniTask<bool> SuppressCancellationThrow()
Returns

UniTask<System.Boolean>

SwitchToSynchronizationContext(SynchronizationContext, CancellationToken)

public static SwitchToSynchronizationContextAwaitable SwitchToSynchronizationContext(SynchronizationContext synchronizationContext, CancellationToken cancellationToken = default(CancellationToken))
Parameters

synchronizationContext System.Threading.SynchronizationContext

cancellationToken System.Threading.CancellationToken

Returns

SwitchToSynchronizationContextAwaitable

SwitchToTaskPool()

Note: use SwitchToThreadPool is recommended.

public static SwitchToTaskPoolAwaitable SwitchToTaskPool()
Returns

SwitchToTaskPoolAwaitable

SwitchToThreadPool()

public static SwitchToThreadPoolAwaitable SwitchToThreadPool()
Returns

SwitchToThreadPoolAwaitable

ToCoroutine(Func)

public static IEnumerator ToCoroutine(Func<UniTask> taskFactory)
Parameters

taskFactory System.Func<UniTask>

Returns

System.Collections.Generic.IEnumerator

ToString()

public override readonly string ToString()
Returns

System.String

Overrides

System.ValueType.ToString()

Void(Func)

helper of fire and forget void action.

public static void Void(Func<UniTaskVoid> asyncAction)
Parameters

asyncAction System.Func<UniTaskVoid>

Void(Func<CancellationToken, UniTaskVoid>, CancellationToken)

helper of fire and forget void action.

public static void Void(Func<CancellationToken, UniTaskVoid> asyncAction, CancellationToken cancellationToken)
Parameters

asyncAction System.Func<System.Threading.CancellationToken, UniTaskVoid>

cancellationToken System.Threading.CancellationToken

Void(Func<T, UniTaskVoid>, T)

helper of fire and forget void action.

public static void Void<T>(Func<T, UniTaskVoid> asyncAction, T state)
Parameters

asyncAction System.Func<T, UniTaskVoid>

state T

Type Parameters

T

WaitForEndOfFrame()

[Obsolete("Use WaitForEndOfFrame(MonoBehaviour) instead or UniTask.Yield(PlayerLoopTiming.LastPostLateUpdate). Equivalent for coroutine's WaitForEndOfFrame requires MonoBehaviour(runner of Coroutine).")]
public static YieldAwaitable WaitForEndOfFrame()
Returns

YieldAwaitable

WaitForEndOfFrame(MonoBehaviour)

public static UniTask WaitForEndOfFrame(MonoBehaviour coroutineRunner)
Parameters

coroutineRunner MonoBehaviour

Returns

UniTask

WaitForEndOfFrame(MonoBehaviour, CancellationToken, Boolean)

public static UniTask WaitForEndOfFrame(MonoBehaviour coroutineRunner, CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

coroutineRunner MonoBehaviour

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitForEndOfFrame(CancellationToken, Boolean)

[Obsolete("Use WaitForEndOfFrame(MonoBehaviour) instead or UniTask.Yield(PlayerLoopTiming.LastPostLateUpdate). Equivalent for coroutine's WaitForEndOfFrame requires MonoBehaviour(runner of Coroutine).")]
public static UniTask WaitForEndOfFrame(CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitForFixedUpdate()

Same as UniTask.Yield(PlayerLoopTiming.LastFixedUpdate).

public static YieldAwaitable WaitForFixedUpdate()
Returns

YieldAwaitable

WaitForFixedUpdate(CancellationToken, Boolean)

Same as UniTask.Yield(PlayerLoopTiming.LastFixedUpdate, cancellationToken).

public static UniTask WaitForFixedUpdate(CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitForSeconds(Int32, Boolean, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitForSeconds(int duration, bool ignoreTimeScale = false, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

duration System.Int32

ignoreTimeScale System.Boolean

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitForSeconds(Single, Boolean, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitForSeconds(float duration, bool ignoreTimeScale = false, PlayerLoopTiming delayTiming = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

duration System.Single

ignoreTimeScale System.Boolean

delayTiming PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitUntil(Func, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitUntil(Func<bool> predicate, PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

predicate System.Func<System.Boolean>

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitUntil(T, Func<T, Boolean>, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitUntil<T>(T state, Func<T, bool> predicate, PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

state T

predicate System.Func<T, System.Boolean>

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Type Parameters

T

WaitUntilCanceled(CancellationToken, PlayerLoopTiming, Boolean)

public static UniTask WaitUntilCanceled(CancellationToken cancellationToken, PlayerLoopTiming timing = PlayerLoopTiming.Update, bool completeImmediately = false)
Parameters

cancellationToken System.Threading.CancellationToken

timing PlayerLoopTiming

completeImmediately System.Boolean

Returns

UniTask

WaitUntilValueChanged<T, U>(T, Func<T, U>, PlayerLoopTiming, IEqualityComparer, CancellationToken, Boolean)

public static UniTask<U> WaitUntilValueChanged<T, U>(T target, Func<T, U> monitorFunction, PlayerLoopTiming monitorTiming = PlayerLoopTiming.Update, IEqualityComparer<U> equalityComparer = null, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
    where T : class
Parameters

target T

monitorFunction System.Func<T, U>

monitorTiming PlayerLoopTiming

equalityComparer System.Collections.Generic.IEqualityComparer

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Type Parameters

T

U

WaitWhile(Func, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitWhile(Func<bool> predicate, PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

predicate System.Func<System.Boolean>

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

WaitWhile(T, Func<T, Boolean>, PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask WaitWhile<T>(T state, Func<T, bool> predicate, PlayerLoopTiming timing = PlayerLoopTiming.Update, CancellationToken cancellationToken = default(CancellationToken), bool cancelImmediately = false)
Parameters

state T

predicate System.Func<T, System.Boolean>

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Type Parameters

T

WhenAll(UniTask[])

public static UniTask WhenAll(params UniTask[] tasks)
Parameters

tasks UniTask[]

Returns

UniTask

WhenAll(IEnumerable)

public static UniTask WhenAll(IEnumerable<UniTask> tasks)
Parameters

tasks System.Collections.Generic.IEnumerable<UniTask>

Returns

UniTask

WhenAll(UniTask[])

public static UniTask<T[]> WhenAll<T>(params UniTask<T>[] tasks)
Parameters

tasks UniTask[]

Returns

UniTask<T[]>

Type Parameters

T

WhenAll(IEnumerable<UniTask>)

public static UniTask<T[]> WhenAll<T>(IEnumerable<UniTask<T>> tasks)
Parameters

tasks System.Collections.Generic.IEnumerable<UniTask>

Returns

UniTask<T[]>

Type Parameters

T

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10, T11>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10, T11, T12>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10, T11, T12, T13>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13, UniTask<T14> task14)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

task14 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10, T11, T12, T13, T14>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

T14

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13, UniTask<T14> task14, UniTask<T15> task15)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

task14 UniTask

task15 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9, T10, T11, T12, T13, T14, System.ValueTuple>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

T14

T15

WhenAll<T1, T2>(UniTask, UniTask)

public static UniTask<(T1, T2)> WhenAll<T1, T2>(UniTask<T1> task1, UniTask<T2> task2)
Parameters

task1 UniTask

task2 UniTask

Returns

UniTask<System.ValueTuple<T1, T2>>

Type Parameters

T1

T2

WhenAll<T1, T2, T3>(UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3)> WhenAll<T1, T2, T3>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3>>

Type Parameters

T1

T2

T3

WhenAll<T1, T2, T3, T4>(UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4)> WhenAll<T1, T2, T3, T4>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4>>

Type Parameters

T1

T2

T3

T4

WhenAll<T1, T2, T3, T4, T5>(UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5)> WhenAll<T1, T2, T3, T4, T5>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5>>

Type Parameters

T1

T2

T3

T4

T5

WhenAll<T1, T2, T3, T4, T5, T6>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6)> WhenAll<T1, T2, T3, T4, T5, T6>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6>>

Type Parameters

T1

T2

T3

T4

T5

T6

WhenAll<T1, T2, T3, T4, T5, T6, T7>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7)> WhenAll<T1, T2, T3, T4, T5, T6, T7>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(T1, T2, T3, T4, T5, T6, T7, T8, T9)> WhenAll<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

Returns

UniTask<System.ValueTuple<T1, T2, T3, T4, T5, T6, T7, System.ValueTuple<T8, T9>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

WhenAny(UniTask[])

Return value is winArgumentIndex

public static UniTask<int> WhenAny(params UniTask[] tasks)
Parameters

tasks UniTask[]

Returns

UniTask<System.Int32>

WhenAny(IEnumerable)

Return value is winArgumentIndex

public static UniTask<int> WhenAny(IEnumerable<UniTask> tasks)
Parameters

tasks System.Collections.Generic.IEnumerable<UniTask>

Returns

UniTask<System.Int32>

WhenAny(UniTask, UniTask)

public static UniTask<(bool hasResultLeft, T result)> WhenAny<T>(UniTask<T> leftTask, UniTask rightTask)
Parameters

leftTask UniTask

rightTask UniTask

Returns

UniTask<System.ValueTuple<System.Boolean, T>>

Type Parameters

T

WhenAny(UniTask[])

public static UniTask<(int winArgumentIndex, T result)> WhenAny<T>(params UniTask<T>[] tasks)
Parameters

tasks UniTask[]

Returns

UniTask<System.ValueTuple<System.Int32, T>>

Type Parameters

T

WhenAny(IEnumerable<UniTask>)

public static UniTask<(int winArgumentIndex, T result)> WhenAny<T>(IEnumerable<UniTask<T>> tasks)
Parameters

tasks System.Collections.Generic.IEnumerable<UniTask>

Returns

UniTask<System.ValueTuple<System.Int32, T>>

Type Parameters

T

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10, T11 result11)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10, T11>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10, T11 result11, T12 result12)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10, T11, T12>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10, T11 result11, T12 result12, T13 result13)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10, T11, T12, T13>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10, T11 result11, T12 result12, T13 result13, T14 result14)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13, UniTask<T14> task14)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

task14 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10, T11, T12, T13, System.ValueTuple>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

T14

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9, T10 result10, T11 result11, T12 result12, T13 result13, T14 result14, T15 result15)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9, UniTask<T10> task10, UniTask<T11> task11, UniTask<T12> task12, UniTask<T13> task13, UniTask<T14> task14, UniTask<T15> task15)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

task10 UniTask

task11 UniTask

task12 UniTask

task13 UniTask

task14 UniTask

task15 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9, T10, T11, T12, T13, System.ValueTuple<T14, T15>>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

T10

T11

T12

T13

T14

T15

WhenAny<T1, T2>(UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2)> WhenAny<T1, T2>(UniTask<T1> task1, UniTask<T2> task2)
Parameters

task1 UniTask

task2 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2>>

Type Parameters

T1

T2

WhenAny<T1, T2, T3>(UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3)> WhenAny<T1, T2, T3>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3>>

Type Parameters

T1

T2

T3

WhenAny<T1, T2, T3, T4>(UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4)> WhenAny<T1, T2, T3, T4>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4>>

Type Parameters

T1

T2

T3

T4

WhenAny<T1, T2, T3, T4, T5>(UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5)> WhenAny<T1, T2, T3, T4, T5>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5>>

Type Parameters

T1

T2

T3

T4

T5

WhenAny<T1, T2, T3, T4, T5, T6>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6)> WhenAny<T1, T2, T3, T4, T5, T6>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6>>

Type Parameters

T1

T2

T3

T4

T5

T6

WhenAny<T1, T2, T3, T4, T5, T6, T7>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7)> WhenAny<T1, T2, T3, T4, T5, T6, T7>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask, UniTask)

public static UniTask<(int winArgumentIndex, T1 result1, T2 result2, T3 result3, T4 result4, T5 result5, T6 result6, T7 result7, T8 result8, T9 result9)> WhenAny<T1, T2, T3, T4, T5, T6, T7, T8, T9>(UniTask<T1> task1, UniTask<T2> task2, UniTask<T3> task3, UniTask<T4> task4, UniTask<T5> task5, UniTask<T6> task6, UniTask<T7> task7, UniTask<T8> task8, UniTask<T9> task9)
Parameters

task1 UniTask

task2 UniTask

task3 UniTask

task4 UniTask

task5 UniTask

task6 UniTask

task7 UniTask

task8 UniTask

task9 UniTask

Returns

UniTask<System.ValueTuple<System.Int32, T1, T2, T3, T4, T5, T6, System.ValueTuple<T7, T8, T9>>>

Type Parameters

T1

T2

T3

T4

T5

T6

T7

T8

T9

WhenEach(UniTask[])

public static IUniTaskAsyncEnumerable<WhenEachResult<T>> WhenEach<T>(params UniTask<T>[] tasks)
Parameters

tasks UniTask[]

Returns

IUniTaskAsyncEnumerable<WhenEachResult>

Type Parameters

T

WhenEach(IEnumerable<UniTask>)

public static IUniTaskAsyncEnumerable<WhenEachResult<T>> WhenEach<T>(IEnumerable<UniTask<T>> tasks)
Parameters

tasks System.Collections.Generic.IEnumerable<UniTask>

Returns

IUniTaskAsyncEnumerable<WhenEachResult>

Type Parameters

T

Yield()

public static YieldAwaitable Yield()
Returns

YieldAwaitable

Yield(PlayerLoopTiming)

public static YieldAwaitable Yield(PlayerLoopTiming timing)
Parameters

timing PlayerLoopTiming

Returns

YieldAwaitable

Yield(PlayerLoopTiming, CancellationToken, Boolean)

public static UniTask Yield(PlayerLoopTiming timing, CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

timing PlayerLoopTiming

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask

Yield(CancellationToken, Boolean)

public static UniTask Yield(CancellationToken cancellationToken, bool cancelImmediately = false)
Parameters

cancellationToken System.Threading.CancellationToken

cancelImmediately System.Boolean

Returns

UniTask