Exemplo n.º 1
0
        public void TestSearchPerformance()
        {
            ArraySegmentList <char> sourceA = new ArraySegmentList <char>();
            List <char>             sourceB = new List <char>();

            char[] element = null;

            for (var i = 0; i < 100; i++)
            {
                element = Guid.NewGuid().ToString().ToCharArray();
                sourceA.AddSegment(element, 0, element.Length);
                sourceB.AddRange(element);
            }

            char[] mark = element.Take(4).ToArray();

            int testCount = 1000;

            GC.Collect();

            Stopwatch watch = new Stopwatch();

            watch.Start();

            for (var i = 0; i < testCount; i++)
            {
                sourceA.SearchMark(mark);
            }

            watch.Stop();

            Console.WriteLine(watch.ElapsedMilliseconds);

            watch.Reset();

            GC.Collect();

            watch.Start();

            for (var i = 0; i < testCount; i++)
            {
                sourceB.SearchMark(mark);
            }

            watch.Stop();

            Console.WriteLine(watch.ElapsedMilliseconds);
        }
Exemplo n.º 2
0
        public void TestSearchPerformance()
        {
            ArraySegmentList<char> sourceA = new ArraySegmentList<char>();
            List<char> sourceB = new List<char>();

            char[] element = null;

            for (var i = 0; i < 100; i++)
            {
                element = Guid.NewGuid().ToString().ToCharArray();
                sourceA.AddSegment(element, 0, element.Length);
                sourceB.AddRange(element);
            }

            char[] mark = element.Take(4).ToArray();

            int testCount = 1000;

            GC.Collect();

            Stopwatch watch = new Stopwatch();

            watch.Start();

            for (var i = 0; i < testCount; i++)
            {
                sourceA.SearchMark(mark);
            }

            watch.Stop();
            
            Console.WriteLine(watch.ElapsedMilliseconds);

            watch.Reset();

            GC.Collect();

            watch.Start();

            for (var i = 0; i < testCount; i++)
            {
                sourceB.SearchMark(mark);
            }

            watch.Stop();

            Console.WriteLine(watch.ElapsedMilliseconds);
        }