我有以下循环来侦听传入的 UDP 消息
public void run(){
int count = 0;
boolean loopRecv = true;
while (loopRecv) {
count++;
if (count == 500) {
loopRecv = false;
System.out.println("break from loop");
count = 0;
}
}
}
问题是在几个小时内,我收到了内存不足的异常。我也在监视 Top 中的内存,它增长缓慢。
我认为打破这个循环会删除分配的堆栈帧,但情况似乎并非如此。
如何运行此循环而不会收到内存不足错误?