Beispiel #1
0
        static long TestConsume()
        {
            var recordNumber = 1000000;
            var random       = new RandomTestDist();
            var share1       = new ShareList(random);

            var insertEndTime = DateTime.Now;
            var task          = Task.Factory.StartNew(() => {
                while (recordNumber-- > 0)
                {
                    share1.In(Guid.NewGuid().ToString() + " " + DateTime.Now);
                }
                if (recordNumber <= 0)
                {
                    insertEndTime = DateTime.Now;
                }
            });
            //task.Wait();

            var start     = new Stopwatch();
            var startTime = DateTime.Now;

            start.Start();

            var i = 0;

            while (true)
            {
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Task.Factory.StartNew(() => { share1.PrintByMulti(); });
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("Do once ==============================================================================");
                //if (share1.IsStop(startTime)) break;
                if (share1.CheckAllEmpty())
                {
                    i++;
                }
                if (i == 1000)
                {
                    break;
                }
            }
            //start.Stop();
            return(start.ElapsedMilliseconds);
        }
Beispiel #2
0
 public ShareList(RandomTestDist random)
 {
     _random = random;
 }