我正在創建一個非常簡單的應用程序,它讀取並顯示文本文件並在其中搜索。Java JDK 32位與64位
我在問自己是否有興趣向我提出32位和64位版本給用戶。
只有在使用64位版本訪問更多內存堆大小或者是否有其他興趣時纔有所不同?
將在一個64位的JVM 32位已編譯的程序工作(I假設是)
我正在創建一個非常簡單的應用程序,它讀取並顯示文本文件並在其中搜索。Java JDK 32位與64位
我在問自己是否有興趣向我提出32位和64位版本給用戶。
只有在使用64位版本訪問更多內存堆大小或者是否有其他興趣時纔有所不同?
將在一個64位的JVM 32位已編譯的程序工作(I假設是)
32位和64位之間的唯一的差異的生成的任何程序是機器字的大小,則可尋址內存的數量以及使用的操作系統ABI。使用Java,語言規範意味着除非您使用本機代碼,否則機器字大小和OS ABI的差異根本不重要。 (原生代碼必須的構建與加載它的JVM的字大小相同;您不能在同一進程中混合使用32位和64位構建,而且確實沒有非常奇特的編碼,而您不應該這樣做與Java有關。)
原生字的大小可以對C或C++代碼產生根本性的區別,特別是如果編寫得很糟糕或者寫得很糟糕,但Java代碼根本看不出差異。 –
Thanx的答案。我清楚地知道,在純Java中,這不會改變任何事情。 – HpTerm
@HTTerm:在純Java中,所有變化都是可尋址內存的數量(好)和每個對象的內存數量(不太好)。除非您接近VM限制,否則這些更改都不會導致您可以看到的問題。 –
只要您的應用程序是100%純Java,除了可能的堆大小外,沒有多大區別。 – Thomas
只記得32位和64位JRE是單獨安裝的,大多數人只默認安裝了32位(即使在64位機器上)。 – Viruzzo
Thanx爲您的答案。正如我所料,對於純Java來說,這不會改變任何東西(堆大小除外)。 – HpTerm