有没有办法在Java中分配一个未初始化的内存块,例如包含遗留下来的垃圾的数组?我想这样做来衡量Java的内存分配器/垃圾收集器可以分配/释放内存块的速度.
不能.您不能将分配与初始化分开,至少不能用于数组.
究竟是什么,你想要进行基准测试?
我问的原因是,正在运行的JVM中有很多变量会影响任何对象分配时间,范围从对象的大小(确定它的分配位置)到JVM中的其他内容.同一时间(一旦你开始分配对象,它们就会在各代之间混乱),以及Hotspot是否决定你的代码没有做任何事情并且可以用无操作代替.
顺便提一下,有一组相似但不重叠的变量阻碍了malloc()的基准测试......