为什么堆会被 sun.misc.Cleaner 对象污染

问题描述

当我从 java 进程(jgroup gossiprouter)之一获取连续的堆转储时,sun.misc.Cleaner、java.nio.DirectByteBuffer$Deallocator 和 sun.nio.ch.IOVecWrapper$Deallocator 的对象数量是越来越多。

我们没有在我们的代码中使用这些对象,而这些是被 java nio 代码引用的。我找不到太多为什么这些对象保存在内存中,以及哪个线程引用它们。这里的线程数没有增加。请帮忙!

创建这些对象的堆栈,

at sun.misc.Cleaner.<init>(Cleaner.java:49)
at sun.misc.Cleaner.create(Cleaner.java:57)
at java.nio.DirectByteBuffer.<init>(DirectByteBuffer.java:139)
at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:311)
at sun.nio.ch.Util.getTemporaryDirectBuffer(Util.java:241)
at sun.nio.ch.IOUtil.read(IOUtil.java:195)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
at org.jgroups.nio.Buffers.readLengthAndData(Buffers.java:135)
at org.jgroups.blocks.cs.NioConnection._receive(NioConnection.java:236)
at org.jgroups.blocks.cs.NioConnection$Reader._run(NioConnection.java:454)
at org.jgroups.blocks.cs.NioConnection$Reader.run(NioConnection.java:443)
at java.lang.Thread.run(Thread.java:748)

清理这些对象的堆栈, 1.

at sun.misc.Cleaner.clean(Cleaner.java:61)
at sun.nio.ch.Util.free(Util.java:299)
at sun.nio.ch.Util.getTemporaryDirectBuffer(Util.java:239)
at sun.nio.ch.IOUtil.read(IOUtil.java:195)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
at org.jgroups.nio.Buffers.readLengthAndData(Buffers.java:135)
at org.jgroups.blocks.cs.NioConnection._receive(NioConnection.java:236)
at org.jgroups.blocks.cs.NioConnection$Reader._run(NioConnection.java:454)
at org.jgroups.blocks.cs.NioConnection$Reader.run(NioConnection.java:443)
at java.lang.Thread.run(Thread.java:748)
at sun.misc.Cleaner.clean(Cleaner.java:61)
at java.lang.ref.Reference.tryHandlePending(Reference.java:212)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...