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"); } } }
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); }
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; }
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); }
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); }
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(); }
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); }
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); }