Esempio n. 1
0
        public void TestTask()
        {
            int    limitCount   = 0;
            int    numberOfTask = 0;
            Random random       = new Random();


            while ((limitCount < maxQueueSize) && (numberOfTask < 20))
            {
                if (maxQueueSize == random.Next(2, 5))
                {
                    limitCount++;
                    Thread.Sleep(2000);
                    Task newTask1 = Task.Factory.StartNew(() => AddToQueue(Task.CurrentId.ToString()));
                }
                else if (limitCount > 0)
                {
                    limitCount--;
                    Thread.Sleep(2000);
                    Task newTask2 = Task.Factory.StartNew(() => GetQueueData());
                }
                numberOfTask++;
            }

            newLimitedQueue.Dispose();
        }