/// <summary> /// Start delayed task at selected DateTime /// </summary> /// <param name="action"></param> /// <param name="time"></param> /// <param name="cancellationToken">cancellation token for this task</param> public static void Act(CoreAction action, DateTime time, CancellationTokenSource cancellationToken = null) { lock (Instance._processorsBlock.ProcessorsLock) Instance._engineActor.Act(state => action.Invoke(Instance._processorsBlock), time.UnixMilliseconds(), null, cancellationToken); }
/// <summary> /// Post action to main core thread /// </summary> /// <param name="action"></param> public static void Act(CoreAction action) { lock (Instance._processorsBlock.ProcessorsLock) Instance._engineActor.Act(state => action.Invoke(Instance._processorsBlock)); }