Пример #1
0
        private void ProfilerTrsReadCallback(ProfilerTrs arg)
        {
            _profilingPaused        = false;
            _resumeTimeMilliseconds = arg.Value;

            CpuUtilizationHistory.RecordProfilingResumed();
            foreach (var thread in Threads.Collection)
            {
                thread.CpuUtilizationHistory.RecordProfilingResumed();
            }
        }
Пример #2
0
        /// <summary>
        /// Create a data container for the specified profiling session file (but don't load the data at the moment).
        /// </summary>
        /// <param name="filePath">The profiling session file path and name.</param>
        /// <param name="cpuCoreCount">
        /// The target system CPU core count
        /// </param>
        public DataContainer(string filePath, int cpuCoreCount)
        {
            if (string.IsNullOrEmpty(filePath))
            {
                throw new ArgumentException(nameof(filePath));
            }

            _filePath = filePath;

            CpuUtilizationHistory = new CpuUtilizationHistory(cpuCoreCount);

            var rootFunc = new Function {
                Name = "<ROOT>", Signature = "<EMPTY>"
            };

            Functions.Add(rootFunc.InternalId, rootFunc);
        }
Пример #3
0
 private void CpuReadCallback(Cpu arg)
 {
     CpuUtilizationHistory.RecordCpuUsage(arg.Timestamp, arg.Duration);
 }