Table of Contents

Interface ISchedulerSystem

Namespace
Framework.Systems.Time.Scheduler
Assembly
Assembly-CSharp.dll

지연 실행(Delay) 및 반복 실행(Repeat) 스케줄링 계약.

public interface ISchedulerSystem

Examples

var id = _scheduler.Delay(3f, () => SpawnEnemy(), ct);
var repeatId = _scheduler.Repeat(1f, () => SpawnItem(), ct);
_scheduler.Cancel(id);

Remarks

내부적으로 UniTask 기반으로 동작. CancellationToken으로 개별 취소 가능. Cancel(id)로도 개별 취소 가능. CancelAll은 모든 스케줄 취소. [규칙] 모든 비동기 액션은 ForgetWithLog 처리됨.

Methods

Cancel(ScheduleId)

특정 스케줄 취소.

void Cancel(ScheduleId id)

Parameters

id ScheduleId

취소할 스케줄 ID.

CancelAll()

모든 스케줄 취소.

void CancelAll()

Delay(float, Action, CancellationToken)

지정 시간 후 1회 실행.

ScheduleId Delay(float time, Action action, CancellationToken ct = default)

Parameters

time float

지연 시간(초).

action Action

실행할 액션.

ct CancellationToken

취소 신호.

Returns

ScheduleId

취소에 사용할 ScheduleId.

Repeat(float, Action, CancellationToken)

지정 간격으로 반복 실행. ct 취소 또는 Cancel 호출 시 중단.

ScheduleId Repeat(float interval, Action action, CancellationToken ct = default)

Parameters

interval float

반복 간격(초).

action Action

반복 실행할 액션.

ct CancellationToken

취소 신호.

Returns

ScheduleId

취소에 사용할 ScheduleId.