public void Out() { for (int i = 0; i < 100; i++) { Console.WriteLine("{0}:{1}", Thread.CurrentThread.ManagedThreadId, IdDeliverer <int> .GetNextId()); } }
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); }