public void TasksPriorityTest()
        {
            var pool = new ThreadPool.ThreadPool(2);
            var random = new Random();
            var priorityChecker = new PrioritySequenceChecker();

            for (int i = 0; i < 100; i++)
            {
                var priority = (Priority)random.Next(0, 2);
                priorityChecker.BuildSequence(priority);

                var task = new Task(() =>
                                        {
                                            Thread.Sleep(random.Next(10,20));
                                            Assert.AreEqual(true, priorityChecker.CheckSequence(priority));
                                        });

                pool.Execute(task, priority);
            }

            pool.Stop();
        }
Esempio n. 2
0
        public void TasksPriorityTest()
        {
            var pool            = new ThreadPool.ThreadPool(2);
            var random          = new Random();
            var priorityChecker = new PrioritySequenceChecker();

            for (int i = 0; i < 100; i++)
            {
                var priority = (Priority)random.Next(0, 2);
                priorityChecker.BuildSequence(priority);

                var task = new Task(() =>
                {
                    Thread.Sleep(random.Next(10, 20));
                    Assert.AreEqual(true, priorityChecker.CheckSequence(priority));
                });

                pool.Execute(task, priority);
            }

            pool.Stop();
        }