Exemple #1
0
        /// <summary>
        /// Initializes a new DebugDisplay class.
        /// </summary>
        /// <param name="entityComposer">The EntityComposer.</param>
        public DebugDisplay(EntityComposer entityComposer)
        {
            _currentEntityComposer = entityComposer;
            _gameLoop = SGL.QueryComponents <GameLoop>();

            _font          = new Font("Segoe UI", 12, TypefaceStyle.Regular);
            _cpuWatcher    = new CpuWatcher();
            _memoryWatcher = new MemoryWatcher();
            _threadWatcher = new ThreadWatcher();
            _display       = new Rectangle(0, 0, 800, 480);
            _debugMessage  = "Query information ...";
            _pen           = new Pen(Color.Green, 1);
            _pen2          = new Pen(Color.Red, 1);
            _pen3          = new Pen(Color.Blue, 1);

            _cpuWatcher.Start();
            _memoryWatcher.Start();
            _threadWatcher.Start();
        }
        public void Benchmarking_MemoryWatcher_IsolatedMemoryTest()
        {
            // Arrange
            var isolatedBenchmark = new IsolatedBenchmarkTest();

            isolatedBenchmark.Arrange();

            IMemoryWatcher memoryWatcher = new MemoryWatcher();

            // Act
            memoryWatcher.Start(TimeSpan.FromMilliseconds(10));
            isolatedBenchmark.Act();
            memoryWatcher.Stop();

            // Assert
            Console.WriteLine("List of measured memory");
            Console.WriteLine(string.Join(Environment.NewLine, memoryWatcher.GetMeasuredMemory()));
            Console.WriteLine($"MaxMemory = {memoryWatcher.GetMaxMemory()}");
            Console.WriteLine($"MeanMemory = {memoryWatcher.GetMeanMemory()}");
            isolatedBenchmark.Dispose();
        }