Как поднять эффективность сжатия GZip(в NET 3.5)

303
11 марта 2017, 00:34

Организовано сжатие файла следующим образом:

using (Stream fs = File.OpenRead(fileInput))
using (Stream fd = File.Create(FileOut))
using (Stream csStream = new GZipStream(fd, CompressionMode.Compress))
{
    byte[] buffer = new byte[1024];
    int nRead;
    try
    {
        while ((nRead = fs.Read(buffer, 0, buffer.Length)) > 0)
        {
            csStream.Write(buffer, 0, nRead);
        }
    }

Хотя в msdn и написано, что GZip сам умеет распределять потоки наиболее эффективно, однако на деле получается загрузка процессоров лишь на 25%. Каким образом можно модифицировать этот кусок кода, чтобы задействовать как можно больше ресурсов системы, для ускорения процесса сжатия?

READ ALSO
Можно ли средствами C# получить информацию о кластере?

Можно ли средствами C# получить информацию о кластере?

Можно ли средствами C# получить информацию о кластере? Например получить список ролей и их ресурсы? Если можно - скиньте ссылку почитать как...

311
как отсортировать одномерный массивна c#

как отсортировать одномерный массивна c#

В одномерном массиве, состоящем из п вещественных элементов, вычислить: произведение положительных элементов массива; сумму элементов массива,...

353
Задержка перехода между страницами в WebBrowser

Задержка перехода между страницами в WebBrowser

Есть некое приложение, которое нажимает кнопки и переходит по этим кнопкам на другие ссылки заполняет input и так далееТак вот есть одна проблема

288
C sharp socket recieve виснет

C sharp socket recieve виснет

Здравствуйте! По какой причине программа может виснуть до получения ответа на string answer = ReceiveDataFromServer();? Те

265