• 32bit 64bit jvm 规格严格


    This "detail" is not abstracted away when interacting with the Java Native Interface. 32-bit DLLs can't be loaded with a 64-bit JVM (and vice versa). So this is quite essential information for anyone using JNI. It's a pity that there seems to be no portable way to obtain this info. One way is to first try loading a 32-bit version of the DLL, and if it fails, try the 64-bit version, etc. Ugly! – Joonas Pulakka Apr 30 '10 at 7:17

    ---------------------------------------------------------------------------------------------------------------------------------------------------

    Sun has a Java System property to determine the bitness of the JVM: 32 or 64:

    sun.arch.data.model=32 // 32 bit JVM 
    sun
    .arch.data.model=64 // 64 bit JVM 

    You can use

    System.getProperty("sun.arch.data.model")  

    to determine if its 32/64 from the program.

    From the sun.docs:

    When writing Java code, how do I distinguish between 32 and 64-bit operation?

    There's no public API that allows you to distinguish between 32 and 64-bit operation. Think of 64-bit as just another platform in the write once, run anywhere tradition. However, if you'd like to write code which is platform specific (shame on you), the system property sun.arch.data.model has the value "32", "64", or "unknown".

    The only good reason is if your java code is dependent upon native libraries and your code needs to determine which version (32 or 64bit) to load on startup.

    Note by me : 这个仅在HotSpot JVM上可用

    ------------------------------------------------------------------------------------------------------------------------------------------------

    System.out.println(System.getProperty("java.vm.name")); 
    Note by me : 这个不好说,也许能返回带有64bit的标识,

    -----------------------------------------------------------------------------------------------------------------------------------------------

    Copy from ServerFault:

    4 down vote accepted

    Here (from the Sun release notes) is the answer I was looking for, at least for how to ensure the JDK server is up and running:

    jre\bin\server\
    

    On Microsoft Windows platforms, the JDK includes both the Java HotSpotTM Server VM and Java

     HotSpotTM Client VM. However, the JRE for Microsoft Windows platforms includes only the Java HotSpotTM Client VM. Those wishing to use the Java HotSpotTM Server VM with the JRE may copy the JDK's jre\bin\server folder to a bin\server directory in the JRE. Software vendors may redistribute the Java HotSpotTM Server VM with their redistributions of the JRE.

    ---------------------------------------------------------------------------------------------------------------------------------------------------

    http://stackoverflow.com/questions/198577/real-differences-between-java-server-and-java-client

    http://stackoverflow.com/questions/1803075/crowdsourcing-a-complete-list-of-common-java-system-properties-and-known-values

    http://stackoverflow.com/questions/1833129/how-to-make-sure-im-using-the-server-jvm

  • 相关阅读:
    使用JS获取选中的复选框的值
    AngularJS实现tab选项卡
    Java递归获取树父节点下的所有树子节点
    SQL中的case when then
    用sql语句(alter)追加新字段、外键、删除列
    javascript把number转化成百分比
    使用group by来去除重复记录
    JavaScript数组
    基本排序方法
    (转)如何学好C语言
  • 原文地址:https://www.cnblogs.com/diyunpeng/p/2303957.html
Copyright © 2020-2023  润新知