Jetty Websocket Client WebSocketAdapter - 字节数组内存使用问题

时间:2017-01-16 08:54:37

标签: java arrays memory jetty em-websocket-client

我正在使用最新的Jetty websocket客户端,我有一个简单的客户端应用程序来接收来自服务器的视频流。使用大约1 MB的二进制块将流作为服务器推送发送。作为客户端套接字,我只是扩展了Jetty的WebSocketAdapter类,我的套接字中的相关部分接收服务器推送是:

@Override
public void onWebSocketBinary(final byte[] data, final int offset, final int length) {
    dataCount += data.length;
}

由于客户端代码用于负载测试,我不再进一步处理数据,我只是期望数据被代码丢弃。另外,为了模拟多个客户端,我创建了几个WebSocketClient实例和相关的套接字。

运行客户端时,java进程内存使用量不断增加,最终导致OutOfMemory情况。我试图分析堆转储,我看到以下内容:

Heap dump

所以我的问题是,为什么不清理字节数组使用的内存?内存消耗不断增长和增长。我可以在代码中自行清理数组吗?

0 个答案:

没有答案