Exemplo n.º 1
0
        public void testPairing()
        {
            queue   = new ConcurrentQueue <Tuple <int, string> >();
            pairing = new Pairing2 <int, string>();
            int MAX = 50;



            Thread f4th = new Thread(() => funGen("tres", 1000));
            Thread f5th = new Thread(() => funGen("quatro", 1000));
            Thread f6th = new Thread(() => funGen("nove", 1000));

            Thread f7th = new Thread(() => funGenT(3, 1000));
            Thread f8th = new Thread(() => funGenT(4, 1000));
            Thread f9th = new Thread(() => funGenT(5, 1000));



            f4th.Start();
            f5th.Start();
            f6th.Start();

            f7th.Start();
            f8th.Start();
            f9th.Start();


            f4th.Join();
            f5th.Join();
            f6th.Join();

            f7th.Join();
            f8th.Join();
            f9th.Join();

            Assert.AreEqual(6, queue.Count);

            var array = queue.ToArray();

            for (int i = 0; i < array.Length; i += 2)
            {
                var tuple = array[i];

                Assert.AreEqual(2, array.Count(e => e.Equals(tuple)));
            }
        }