Пример #1
0
        private void RemoveHalfOfIntervals(IIntervalContainer <DateTime> intervalContainer, List <Interval <DateTime> > intervals)
        {
            stopwatch.Reset();
            long initalMemory = GC.GetTotalMemory(true);

            stopwatch.Start();

            //remove second part of intervals
            int halfNumberOfIntervals = intervals.Count / 2;

            for (int i = 0; i < halfNumberOfIntervals; i++)
            {
                intervalContainer.Remove(intervals[halfNumberOfIntervals + i]);
            }

            stopwatch.Stop();
            long endRemoveIntervalsMemory = GC.GetTotalMemory(true);
            long bytesUsed = endRemoveIntervalsMemory - initalMemory;

            timeEllapsedReport.AppendLine();
            timeEllapsedReport.AppendLine(string.Format("Time taken for removing {0} intervals: {1} ms", halfNumberOfIntervals, stopwatch.ElapsedMilliseconds));
            timeEllapsedReport.AppendLine(string.Format("Memory used for removing {0} intervals: {1:0.00} MB", halfNumberOfIntervals, BytesToMegabytes(bytesUsed)));
            timeEllapsedReport.AppendLine();
        }
        private void RemoveHalfOfIntervals(IIntervalContainer<DateTime> intervalContainer, List<Interval<DateTime>> intervals)
        {
            stopwatch.Reset();
            long initalMemory = GC.GetTotalMemory(true);
            stopwatch.Start();

            //remove second part of intervals
            int halfNumberOfIntervals = intervals.Count / 2;
            for (int i = 0; i < halfNumberOfIntervals; i++)
            {
                intervalContainer.Remove(intervals[halfNumberOfIntervals + i]);
            }

            stopwatch.Stop();
            long endRemoveIntervalsMemory = GC.GetTotalMemory(true);
            long bytesUsed = endRemoveIntervalsMemory - initalMemory;

            timeEllapsedReport.AppendLine();
            timeEllapsedReport.AppendLine(string.Format("Time taken for removing {0} intervals: {1} ms", halfNumberOfIntervals, stopwatch.ElapsedMilliseconds));
            timeEllapsedReport.AppendLine(string.Format("Memory used for removing {0} intervals: {1:0.00} MB", halfNumberOfIntervals, BytesToMegabytes(bytesUsed)));
            timeEllapsedReport.AppendLine();
        }