view MonoPlay/Program.cs @ 186:75103928da09 ref20160224

working on cancelation and error handling
author cin
date Tue, 19 Apr 2016 00:50:14 +0300
parents 4f82e0f161c3
children d45bdf510514
line wrap: on
line source

using System;
using Implab;
using System.Threading.Tasks;
using Implab.Formats.JSON;
using System.IO;
using System.Text.Json;

namespace MonoPlay {
    class MainClass {


        public static void Main(string[] args) {
            if (args == null)
                throw new ArgumentNullException("args");
            int t1, t2;

            for (int i = 0; i < 2; i++) {
                t1 = Environment.TickCount;
                int elements =0;
                using (var reader = new JSONParser(File.OpenText("/home/sergey/temp/citylots.json"))) {
                    while (reader.Read())
                        elements++;
                }

                t2 = Environment.TickCount;
                Console.WriteLine("attempt {0} done: {1} ms, {2:.00} Mb, {3} GC, Elements: {4}",i+1, t2 - t1, GC.GetTotalMemory(false) / (1024*1024), GC.CollectionCount(0), elements );
            }

            Console.WriteLine("Syste.Text.Json");
            var paraser = new JsonParser();
            for (int i = 0; i < 2; i++) {
                t1 = Environment.TickCount;
                using (var reader = File.OpenText("/home/sergey/temp/citylots.json")) {
                    paraser.Parse(reader);
                }

                t2 = Environment.TickCount;
                Console.WriteLine("attempt {0} done: {1} ms, {2:.00} Mb, {3} GC, ",i+1, t2 - t1, GC.GetTotalMemory(false) / (1024*1024), GC.CollectionCount(0));
            }


        }

    }
}