Пример #1
0
 public void AddChild(ITaskTimer taskTimer)
 {
     lock (_syncRoot)
     {
         _taskTimers.Add(taskTimer);
     }
 }
Пример #2
0
 public void AddChild(ITaskTimer taskTimer)
 {
     lock (_syncRoot)
     {
         _taskTimers.Add(taskTimer);
     }
 }
Пример #3
0
        private static void RenderTaskTimer(ITaskTimer taskTimer, StringBuilder stringBuilder, int indent)
        {
            var time = taskTimer.StopedTime.HasValue
                ? string.Format("took {0} sec to complete", (taskTimer.StopedTime.Value - taskTimer.StartedTime).TotalSeconds)
                : "did not finish";

            stringBuilder.AppendFormat(
                "{0}Task '{1}' {2}{3}",
                new string(' ', indent * 2),
                taskTimer.Name,
                time,
                Environment.NewLine);
            foreach (var child in taskTimer.Children)
            {
                RenderTaskTimer(child, stringBuilder, indent + 1);
            }
        }
Пример #4
0
        public ITaskTimer StartTask(string name, ITaskTimer parentTaskTimer)
        {
            var taskTimer = new TaskTimer
            {
                Id          = Guid.NewGuid(),
                Name        = name,
                StartedTime = DateTime.Now,
                Disposer    = DisposeTaskTimer,
                Parent      = parentTaskTimer,
            };

            if (parentTaskTimer != null)
            {
                parentTaskTimer.AddChild(taskTimer);
            }

            return(taskTimer);
        }
Пример #5
0
        public ITaskTimer StartTask(string name, ITaskTimer parentTaskTimer)
        {
            var taskTimer = new TaskTimer
            {
                Id = Guid.NewGuid(),
                Name = name,
                StartedTime = DateTime.Now,
                Disposer = DisposeTaskTimer,
                Parent = parentTaskTimer,
            };

            if (parentTaskTimer != null)
            {
                parentTaskTimer.AddChild(taskTimer);
            }

            return taskTimer;
        }
Пример #6
0
        private static void RenderTaskTimer(ITaskTimer taskTimer, StringBuilder stringBuilder, int indent)
        {
            var time = taskTimer.StopedTime.HasValue
                ? string.Format("took {0} sec to complete", (taskTimer.StopedTime.Value - taskTimer.StartedTime).TotalSeconds)
                : "did not finish";

            stringBuilder.AppendFormat(
                "{0}Task '{1}' {2}{3}",
                new string(' ', indent * 2),
                taskTimer.Name,
                time,
                Environment.NewLine);
            foreach (var child in taskTimer.Children)
            {
                RenderTaskTimer(child, stringBuilder, indent + 1);
            }
        }
Пример #7
0
 public ITaskTimer StartTaskFormat(ITaskTimer parentTaskTimer, string formatName, params object[] args)
 {
     var name = SafeStringFormat(formatName, args);
     return StartTask(name, parentTaskTimer);
 }
Пример #8
0
        public ITaskTimer StartTaskFormat(ITaskTimer parentTaskTimer, string formatName, params object[] args)
        {
            var name = SafeStringFormat(formatName, args);

            return(StartTask(name, parentTaskTimer));
        }