Ejemplo n.º 1
0
 public void Out()
 {
     for (int i = 0; i < 100; i++)
     {
         Console.WriteLine("{0}:{1}", Thread.CurrentThread.ManagedThreadId, IdDeliverer <int> .GetNextId());
     }
 }
Ejemplo n.º 2
0
        public void IdTest()
        {
            Console.WriteLine(IdDeliverer.CreateId <IB, A>());
            Console.WriteLine(IdDeliverer.CreateId <IB, B>());
            Console.WriteLine(IdDeliverer.CreateId <IB, C>());
            Console.WriteLine(IdDeliverer.CreateId <IC, A0>());
            Console.WriteLine(IdDeliverer.CreateId <IC, B0>());
            Console.WriteLine(IdDeliverer.CreateId <IC, C0>());

            Console.WriteLine(IdDeliverer.GetLongId <IB, A>());
            Console.WriteLine(IdDeliverer.GetLongId <IB, B>());
            Console.WriteLine(IdDeliverer.GetLongId <IB, C>());
            Console.WriteLine(IdDeliverer.GetLongId <IC, A0>());
            Console.WriteLine(IdDeliverer.GetLongId <IC, B0>());
            Console.WriteLine(IdDeliverer.GetLongId <IC, C0>());

            Assert.AreEqual(IdDeliverer.GetId <A>(), 0);
            Assert.AreEqual(IdDeliverer.GetId <B>(), 1);
            Assert.AreEqual(IdDeliverer.GetId <C>(), 2);
            Assert.AreEqual(IdDeliverer.GetId <A0>(), 0);
            Assert.AreEqual(IdDeliverer.GetId <B0>(), 1);
            Assert.AreEqual(IdDeliverer.GetId <C0>(), 2);

            Assert.AreEqual(IdDeliverer.GetCount <IB>(), 3);
            Assert.AreEqual(IdDeliverer.GetCount <IC>(), 3);

            Assert.AreEqual(IdDeliverer.GetBaseId <IB>(), 0);
            Assert.AreEqual(IdDeliverer.GetBaseId <IC>(), 1);

            Assert.AreEqual(IdDeliverer.GetLongId <IB, A>(), 0x0000000000000000);
            Assert.AreEqual(IdDeliverer.GetLongId <IB, B>(), 0x0000000000000001);
            Assert.AreEqual(IdDeliverer.GetLongId <IB, C>(), 0x0000000000000002);
            Assert.AreEqual(IdDeliverer.GetLongId <IC, A0>(), 0x0000000100000000);
            Assert.AreEqual(IdDeliverer.GetLongId <IC, B0>(), 0x0000000100000001);
            Assert.AreEqual(IdDeliverer.GetLongId <IC, C0>(), 0x0000000100000002);
        }