public void UpdateTaskState([NotNull] TaskMetaInformation taskMetaInformation) { lock (state) { if (!state.TaskMetas.TryGetValue(taskMetaInformation.Id, out var taskMeta)) { taskMeta = new RtqTaskCounterStateTaskMeta(taskMetaInformation.Name); state.TaskMetas.Add(taskMetaInformation.Id, taskMeta); } taskMeta.State = taskMetaInformation.State; taskMeta.MinimalStartTimestamp = taskMetaInformation.GetMinimalStartTimestamp(); taskMeta.LastModificationTicks = taskMetaInformation.LastModificationTicks; taskMeta.LastStateUpdateTimestamp = Timestamp.Now; } }