static void Main(string[] args) { var writer = new FileWriterWithProgress(); writer.WritingPerformed += (sender, e) => Console.WriteLine(e.Percentage); writer.WritingCompleted += (sender, e) => Console.WriteLine("Completed"); var data = new byte[100]; new Random().NextBytes(data); writer.WriteBytes("log.txt", data, 0.1f); }
static void Main(string[] args) { var gen = new RandomDataGenerator(); gen.RandomDataGenerating += OnRandomDataGenerating; gen.RandomDataGenerated += OnRandomDataGenerated; var randomBytes = gen.GetRandomData(1000, 50); var writer = new FileWriterWithProgress(); writer.WritingPerformed += OnWritingPerformed; writer.WritingCompleted += OnWritingCompleted; writer.WriteBytes("byte.txt", randomBytes, 0.1f); // будет 11 событrandomBytesий - 10 событий WritingPerformed при достижении 10%, 20%, …, 100% записи // + 1 событие WritingCompleted при завершении. writer.WriteBytes("byte.txt", gen.GetRandomData(1000, 50), 0.15f); // будет 7 событий - 6 событий WritingPerformed при достижении 15%, 30%, …, 90% записи //+ 1 событие WritingCompleted при завершении. Console.ReadKey(); }