Beispiel #1
0
 public void AnalizarRegistros(IList <RegistroInLineTO> registros, ProcesadorRegistroLog procesadorRegistro)
 {
     foreach (RegistroInLineTO registro in registros)
     {
         procesadorRegistro(registro);
     }
 }
Beispiel #2
0
        public void LeerArchivo(string ruta, ProcesadorRegistroLog procesadorRegistro, int cantidadRegistrosBloque = 100)
        {
            FileHelperAsyncEngine <RegistroInLineTO> reader = new FileHelperAsyncEngine <RegistroInLineTO>();

            using (reader.BeginReadFile(ruta))
            {
                RegistroInLineTO[] registros = reader.ReadNexts(cantidadRegistrosBloque);
                while (registros.Length > 0)
                {
                    AnalizarRegistros(registros, procesadorRegistro);
                    registros = reader.ReadNexts(cantidadRegistrosBloque);
                }
            }
        }
Beispiel #3
0
        public void LeerArchivoMasivamente(string ruta, ProcesadorRegistroLog procesadorRegistro, int registrosPorHilo)
        {
            FileHelperAsyncEngine <RegistroInLineTO> reader = new FileHelperAsyncEngine <RegistroInLineTO>();

            using (reader.BeginReadFile(ruta))
            {
                IList <Task> tareas = new List <Task>();

                RegistroInLineTO[] registros = reader.ReadNexts(registrosPorHilo);
                while (registros.Length > 0)
                {
                    tareas.Add(new Task(() => { AnalizarRegistros(registros, procesadorRegistro); }));
                }
                Task.WaitAll(tareas.ToArray());
            }
        }