bytearray を圧縮するには、次の方法があります。
protected byte[] compress(byte[] original)
{
byte[] compressed = null;
try (ByteArrayOutputStream buffer = new ByteArrayOutputStream())
{
try (DeflaterOutputStream stream = new DeflaterOutputStream(buffer, new Deflater()))
{
stream.write(original);
}
compressed = buffer.toByteArray();
}
catch (IOException e)
{
e.printStackTrace();
}
return compressed;
}
今、ストリームを常に再初期化するためのパフォーマンス コストが高いかどうか、およびストリームを自分のクラスに保持するにはどうすればよいか疑問に思っています。
それを行うことの欠点はありますか?
具体的には、スレッドのコンテキストで。