Esempio n. 1
0
        public void perf()
        {
            var foo = new Foo();
            var sw  = Stopwatch.StartNew();

            for (var i = 0; i < 100 * 1000; i++)
            {
                new Foo().Merge(foo);
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                foo.MemberwiseClone();
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                foo.Clone();
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            var bar  = new Bar();
            var barz = new Bar();

            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                barz = bar;
                barz.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);
        }
Esempio n. 2
0
        public void perf()
        {
            var foo = new Foo();
            var sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                new Foo().Merge(foo);
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                foo.MemberwiseClone();
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                foo.Clone();
                foo.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);

            var bar = new Bar();
            var barz = new Bar();
            sw.Stop();
            sw = Stopwatch.StartNew();
            for (var i = 0; i < 100 * 1000; i++)
            {
                barz = bar;
                barz.Id++;
            }
            Console.WriteLine(sw.ElapsedMilliseconds);
        }