protected override async Task ExecuteOperationAsync() { await Task.Yield(); var destination = _pathsHelper.GetRandomChunkPath(); FileSystemHelper.MergeFiles(_file1.FullName, _file2.FullName, destination); _file1.Delete(); _file2.Delete(); _chunksChannel.Writer.TryWrite(new FileInfo(destination)); TryFinishSorting(); }
private FileInfo WriteToFile(List <string> items) { var filePath = _pathsHelper.GetRandomChunkPath(); FileSystemHelper.CreateEmptyFile(filePath, true); using var writer = new StreamWriter(filePath); foreach (var dataItem in items) { writer.WriteLine(dataItem); } return(new FileInfo(filePath)); }