我在java中使用RandomAccessFile.我有内存泄漏问题.我已将代码简化为以下内容:
public static void main(String[] args) throws IOException, InterruptedException
{
RandomAccessFile r = new RandomAccessFile(new File("test.dat"), "rw");
r.write(new byte[150000000], 0, 150000000);
r.getFD().sync();
r.close();
r = null;
while (true) { Thread.sleep(1000); }
}
Run Code Online (Sandbox Code Playgroud)
执行此代码后(并为GC提供足够的时间),报告的应用程序内存使用量略高于150MB.
我错过了什么?还是Java应该受到责备?