用于64位JVM的Java编程

YoK*_*YoK 5 java 64-bit 32bit-64bit

几个问题:):

如何识别当前安装的JVM?(64位/ 32位)

在为64位JVM目标平台编程时,是否需要做一些考虑?

我的Java代码可以在32位以及64位JVM上运行吗?

如何在64位JVM上运行我的Java App?

如何识别我的Java App使用的JVM?

Pau*_*ett 10

通常情况下,64位jvm会识别自己.

我看到32/64位注意事项:

  1. 地址空间 - 如果你不期望能够处理更多的1.3Gb内存,那么你就不会看到差异
  2. 本机库 - 如果您正在加载任何JNI库,那么它们将需要与您的VM架构相匹配.例如,不要尝试从64位vm加载32位本机库(不使用-d32类型的标志)

是的,相同的代码将在两个JVM上运行.

我认为系统属性"sun.arch.data.model"具有32/64标志.

这里有一些有用的信息:http://www.oracle.com/technetwork/java/hotspotfaq-138619.html

  • os.arch将告诉您操作系统是64位还是32位.这并不意味着VM.可能有理由在64位计算机上运行32位VM,例如由于JNI库.AFAIK没有可移植的方法来确定当前VM是32位还是64位. (2认同)