у меня есть этот код
string dirName = "C:\\temp";
if (Directory.Exists(dirName))
{
Console.WriteLine();
Console.WriteLine("Файлы:");
string[] files = Directory.GetFiles(dirName);
foreach (string s in files)
{
Console.WriteLine(s);
string sourceFile = $"{s}";
string compressedFile = $"{s}z";
Compress(sourceFile, compressedFile);
}
}
он показывает мне все файлы в каталоге и сжимает его.Метод сжатия:
public static void Compress(string sourceFile, string compressedFile)
{
using (FileStream sourceStream = new FileStream(sourceFile, FileMode.OpenOrCreate))
{
using (FileStream targetStream = File.Create(compressedFile))
{
using (GZipStream compressionStream = new GZipStream(targetStream, CompressionMode.Compress))
{
sourceStream.CopyTo(compressionStream);
Console.WriteLine("Compressing file {0} is end. : {1} compressede size is: {2}.",
sourceFile, sourceStream.Length.ToString(), targetStream.Length.ToString());
}
}
}
}
Как я могу сделать асинхронное сжатие этих файлов?я должен использовать массив задач?спасибо