public void MeasureMap_MultyThreadRunner()
        {
            var task   = new Task(() => Trace.WriteLine("ThreadRunner test"));
            var runner = new MultyThreadSessionHandler(10);

            var result = runner.Execute(task, new ProfilerSettings {
                Iterations = 10
            });

            Assert.That(result.Count() == 10);
            Assert.That(result.Iterations.Count() == 100);
        }
示例#2
0
        public void ThreadedTaskExcutor_MultipleThreads()
        {
            var iterations = new List <int>();
            var cnt        = 0;
            var executor   = new MultyThreadSessionHandler(10);
            var results    = executor.Execute(new Task(() =>
            {
                cnt = cnt++;
                iterations.Add(cnt);
            }), new ProfilerSettings {
                Iterations = 10
            });

            Assert.That(results.Count() == 10);
            Assert.That(iterations.Count == 10 * 10);
        }