首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Java】已解决:java.util.zip.DataFormatException

    一、分析问题背景 java.util.zip.DataFormatException异常通常出现在使用Inflater类进行数据解压缩时。Inflater类用于解压缩通过Deflater类压缩的数据。...byte[] compressedData = ...; // 通过某种方式获得的压缩数据 Inflater inflater = new Inflater(); inflater.setInput(compressedData...未完整传递数据:传递给Inflater的数据不完整,可能是数据在传输过程中被截断或丢失。 错误的输入数据:在Inflater中设置了错误的输入数据,导致解压缩失败。...inflater = new Inflater(); inflater.setInput(compressedData); byte[] result = new byte[100];...以下是一个改进后的代码示例: public void decompressData(byte[] compressedData) { Inflater inflater = new Inflater

    24810

    一次疑似 JVM Native 内存泄露的问题分析

    如果 end 方法没有调用,就会导致内存泄漏,java.util.zip.InflaterInputStream 类的 close 方法在一些场景下是不会调用 Inflater.end 方法,如下所示。...但是 Inflater 类有实现 finalize 方法,在 Inflater 对象不可达以后,JVM 会帮忙调用 Inflater 类的 finalize 方法 public class Inflater...Inflater 因为还没被 FinalizerThread 执行 fianlize 方法,导致没有释放 Inflater 的 finalize 方法被调用,但是被 libc 的 ptmalloc 缓存...类没有被回收,经过内存分析看,发现 java.util.zip.Inflater 类有 6k 多没有被回收。...方案 2:修改 FastClasspathScanner 代码,在流关闭的时候,顺带关闭 Inflater, SpringBoot 里面是这么实现的。

    1.6K30
    领券