1.关于公司代码申请100M的byte数组的时候偶尔报out of memory错误。
1)机器内存大小是充足的,但是有用-Xmx1024m设置内存限制。之前设置为512M,也只是偶尔出错,而且程序刚运行起来不久就会执行这个代码,内存泄露的可能性非常小。
2)之前猜测,内存和磁盘一样,可能存在坏道,而byte数组要求连续内存,会出错。后面了解了一下,内存和磁盘不一样,不会出这对个问题。
3)猜测java虚拟机对数组大小有限制,但是也没有搜到,而且在自己机器上用eclipse实验的时候发现1g的内存都可以直接申请。但是又发现一个问题,eclipse.ini中设置了-Xmx512m,却依然可以申请1g内存大小的数组.....
还是应该用工具分析一下内存到底被什么占用了。