Exemplo n.º 1
0
        private void Prueba4()
        {
            var      ui    = TaskScheduler.FromCurrentSynchronizationContext();
            DateTime date1 = DateTime.Now;
            //Genera los datos
            DataGenerator dataGeneratorLocal = new DataGenerator();

            //Genera lotes
            BatchGenerator batchesManager = new BatchGenerator(dataGeneratorLocal);


            ///Genera los task
            List <Task <string> > tasks = new List <Task <string> >();

            List <FormulaCodificada> lista1 = lista.Take(50000).ToList();
            List <FormulaCodificada> lista2 = lista.Skip(50000).Take(50000).ToList();

            //var lista3 = lista.Skip(200000).Take(100000);
            //var lista4 = lista.Skip(300000).Take(100000);
            //var lista5 = lista.Skip(400000).Take(100000);
            //var lista6 = lista.Skip(500000).Take(100000);
            //var lista7 = lista.Skip(600000).Take(100000);
            //var lista8 = lista.Skip(700000).Take(100000);
            //var lista9 = lista.Skip(800000).Take(100000);
            //var lista10 = lista.Skip(900000).Take(100000

            tasks.Add(GenerarTaskProcesaLote(lista1));
            tasks.Add(GenerarTaskProcesaLote(lista2));



            try
            {
                Task.WaitAll(tasks.ToArray());
            }
            // Ignore exceptions here.
            catch (AggregateException)
            {
            }

            for (int ctr = 0; ctr < tasks.Count; ctr++)
            {
                if (tasks[ctr].Status == TaskStatus.RanToCompletion)
                {
                    //dataGridView1.ResumeLayout(true);
                    DateTime date2 = DateTime.Now;
                    // Calculate the interval between the two dates.
                    TimeSpan interval = date2 - date1;

                    Console.WriteLine(interval.TotalSeconds.ToString());
                    Console.WriteLine(tasks[ctr].Result.ToString());
                }
                else
                {
                    Console.WriteLine("Ocurrio un error");
                }
            }
        }
Exemplo n.º 2
0
        public static void GenerateAll(
            [Required(Description = "Visual Studio Project File containing features")] string projectFile,
            [Optional(false, "force", "f")] bool forceGeneration,
            [Optional(false, "verbose", "v")] bool verboseOutput)
        {
            SpecFlowProject specFlowProject = MsBuildProjectReader.LoadSpecFlowProjectFromMsBuild(projectFile);
            var             batchGenerator  = new BatchGenerator(Console.Out, verboseOutput);

            batchGenerator.ProcessProject(specFlowProject, forceGeneration);
        }
Exemplo n.º 3
0
        private void Form1_Load(object sender, EventArgs e)
        {
            //Genera los datos
            DataGenerator dataGeneratorLocal = new DataGenerator();
            //Genera lotes
            BatchGenerator batchesManager = new BatchGenerator(dataGeneratorLocal);

            lista = dataGeneratorLocal.GenerarTablaConMilRegistros;
            dataGridView1.DataSource = lista;
        }
Exemplo n.º 4
0
        public static void GenerateAll(
            [Required(Description = "Visual Studio Project File containing features")] string projectFile,
            [Optional(false, "force", "f")] bool forceGeneration,
            [Optional(false, "verbose", "v")] bool verboseOutput)
        {
            SpecFlowProject specFlowProject = MsBuildProjectReader.LoadSpecFlowProjectFromMsBuild(projectFile);
            ITraceListener  traceListener   = verboseOutput ? (ITraceListener) new TextWriterTraceListener(Console.Out) : new NullListener();
            var             batchGenerator  = new BatchGenerator(traceListener, new TestGeneratorFactory());

            batchGenerator.ProcessProject(specFlowProject, forceGeneration);
        }
Exemplo n.º 5
0
        public static void GenerateAll(GenerateAllOptions parameters)
        {
            if (parameters.RequestDebuggerToAttach)
            {
                Debugger.Launch();
            }

            ITraceListener traceListener = parameters.VerboseOutput ? (ITraceListener) new TextWriterTraceListener(Console.Out) : new NullListener();

            SpecFlowProject specFlowProject = MsBuildProjectReader.LoadSpecFlowProjectFromMsBuild(Path.GetFullPath(parameters.ProjectFile));
            var             batchGenerator  = new BatchGenerator(traceListener, new TestGeneratorFactory());

            batchGenerator.OnError += BatchGenerator_OnError;

            batchGenerator.ProcessProject(specFlowProject, parameters.ForceGeneration);
        }
Exemplo n.º 6
0
        static void Main(string[] args)
        {
            //Genera los datos
            DataGenerator dataGeneratorLocal = new DataGenerator();

            //Genera lotes
            BatchGenerator batchesManager = new BatchGenerator(dataGeneratorLocal);


            ///Genera los task
            List <Task <List <string> > > tasks = new List <Task <List <string> > >();


            for (int i = 0; i < 10; i++)
            {
                List <FormulaCodificada> actualBatch = new List <FormulaCodificada>();

                actualBatch = batchesManager.batches[i];

                tasks.Add(FindAllCatalogs(actualBatch));
            }

            try
            {
                Task.WaitAll(tasks.ToArray());
            }
            // Ignore exceptions here.
            catch (AggregateException) {
            }

            for (int ctr = 0; ctr < tasks.Count; ctr++)
            {
                if (tasks[ctr].Status == TaskStatus.RanToCompletion)
                {
                    Console.WriteLine(tasks[ctr].Result.Count.ToString());
                }
                else
                {
                    Console.WriteLine("Ocurrio un error");
                }
            }



            Console.ReadKey();
        }
Exemplo n.º 7
0
        public static void GenerateAll(
            [Required(Description = "Visual Studio Project File containing features")] string projectFile,
            [Optional(false, "force", "f")] bool forceGeneration,
            [Optional(false, "verbose", "v")] bool verboseOutput,
            [Optional(false, "debug", Description = "Used for tool integration")] bool requestDebuggerToAttach)
        {
            if (requestDebuggerToAttach)
            {
                Debugger.Launch();
            }

            SpecFlowProject specFlowProject = MsBuildProjectReader.LoadSpecFlowProjectFromMsBuild(Path.GetFullPath(projectFile));
            ITraceListener  traceListener   = verboseOutput ? (ITraceListener) new TextWriterTraceListener(Console.Out) : new NullListener();
            var             batchGenerator  = new BatchGenerator(traceListener, new TestGeneratorFactory());

            batchGenerator.OnError += batchGenerator_OnError;

            batchGenerator.ProcessProject(specFlowProject, forceGeneration);
        }
Exemplo n.º 8
0
        public static BatchGenerator SetupGenerator(bool verboseOutput, TextWriter errorOutput)
        {
            ITraceListener tracer;

            if (!verboseOutput)
            {
                ITraceListener traceListener = new NullListener();
                tracer = traceListener;
            }
            else
            {
                ITraceListener traceListener = new TextWriterTraceListener(Console.Out);
                tracer = traceListener;
            }

            var generator = new BatchGenerator(tracer, new TestGeneratorFactory());

            generator.OnError += OutputError(errorOutput);
            return(generator);
        }