Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // OrtizOL - xCSw - http://ortizol.blogspot.com
- using System;
- using System.IO;
- using System.Threading;
- namespace Receta.Multithreading.R0301
- {
- public class DemoLecturaAsincronica
- {
- public static void Main()
- {
- Console.WriteLine(Environment.NewLine);
- // Creación de archivo de texto para prueba:
- using (FileStream fs = new FileStream("ArchivoPrueba.txt", FileMode.Create))
- {
- fs.SetLength(100000);
- }
- // Procesamiento asincrónico del archivo de texto en un
- // thread independiente:
- ProcesadorLecturaAsincronica plASync = new ProcesadorLecturaAsincronica("ArchivoPrueba.txt");
- plASync.IniciarLectura();
- // Mientras que el thread de lectura asincrónica se ejecuta,
- // en `Main` se ejecutan otras tareas:
- DateTime tiempoInicio = DateTime.Now;
- while( DateTime.Now.Subtract(tiempoInicio).TotalSeconds < 2)
- {
- Console.WriteLine("[Thread `Main`]: Ejecutando otras operaciones...");
- // Pausa para simular una tarea de consumo de
- // tiempo en `Main`:
- Thread.Sleep(TimeSpan.FromMilliseconds(100));
- }
- Console.WriteLine("[Thread `Main`]: Finalizado.");
- Console.ReadLine();
- // Eliminación del archivo de prueba:
- File.Delete("ArchivoPrueba.txt");
- Console.WriteLine(Environment.NewLine);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement