Java — распараллеливание GzipJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Java — распараллеливание Gzip

Сообщение Anonymous »

Мне поручили распараллелить GZip в Java 7, и я не уверен, что это возможно.

Задание такое:
  • Распараллелить gzip, используя заданное количество потоков
  • Каждый поток занимает блок размером 1024 КиБ, используя последний блок размером 32 КиБ из
    Предыдущий блок как словарь. Существует возможность использовать
    словарь
  • Чтение со стандартного ввода и вывода
Что я пробовал:
  • Я пробовал использовать GZIPOutputStream, но, похоже, не существует
    способа изолировать и распараллелить deflate(), и я не могу получить доступ к
    дефлятору для изменения словаря. Я попытался расширить GZIPOutputStream, но, похоже, он действовал не так, как мне хотелось, поскольку я все еще не мог изолировать сжатие/выкачивание.
  • Я пробовал использовать Deflater с включенной оберткой и FilterOutputStream
    для вывода сжатых байтов, но мне не удалось заставить его правильно сжиматься
    в формате GZip. Я сделал так, чтобы у каждого потока был компрессор, который записывал в массив байтов, а затем записывал в OutputStream.
Я не уверен, неправильно ли я использовал свои подходы или полностью использовал неправильные подходы. Может ли кто-нибудь указать мне правильное направление, какие классы использовать для этого проекта?

Подробнее здесь: https://stackoverflow.com/questions/785 ... izing-gzip
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»