use*_*434 0 java
我发现jvm使用4个字节来保存64位env中对象的引用点.
我不明白当应用程序有超过2 ^ 32个对象时如何处理?
谁可以形容这个案子?
ass*_*ias 5
32-bitJVM确实使用32位来引用,但64-bitJVM可以64-bits用于引用.
32-bit
32
64-bit
64-bits
在耗尽JVM 上的引用数量的2 32限制之前32-bit,您将获得OutOfMemoryError(无论可用的RAM如何,您在JVM 2GB上的堆都不能多于堆32-bit).
OutOfMemoryError
2GB
在a上64-bit JVM,假设您有足够的内存来存储它们,则可以创建超过2 32个对象.
64-bit JVM
请注意,某些64位JVM可能会使用32位指针(热点上的CompressedOops标志)以实现性能目的.
归档时间:
12 年,5 月 前
查看次数:
322 次
最近记录: