Beispiel #1
0
        private static void Main(string[] args)
        {
            SetUp();

            var stopwatch = new Stopwatch();

            // ====== PrototypeUsingSerialization ======

            stopwatch.Start();

            PrototypeUsingSerialization prototypeUsingSerializationClone = null;

            for (int i = 0; i < 10_000; i++)
            {
                prototypeUsingSerializationClone = prototypeUsingSerialization.DeepClone();
            }

            stopwatch.Stop();
            Console.WriteLine($"Number of ticks for {nameof(PrototypeUsingSerialization)}: {stopwatch.ElapsedTicks}");

            stopwatch.Reset();

            // ====== PrototypeUsingReflection =========

            stopwatch.Start();

            PrototypeUsingReflection prototypeUsingReflectionClone = null;

            for (int i = 0; i < 10_000; i++)
            {
                prototypeUsingReflectionClone = prototypeUsingReflection.DeepClone();
            }

            stopwatch.Stop();
            Console.WriteLine($"Number of ticks for {nameof(PrototypeUsingReflection)}: {stopwatch.ElapsedTicks}");

            stopwatch.Reset();

            Console.ReadKey();
        }