1
在documentation for Java's Runtime class它指出:Java的Runtime.maxMemory()何時會返回Long.MAX_VALUE?
返回Java虛擬機將嘗試使用的最大內存量。如果沒有固有限制,則返回值Long.MAX_VALUE。
這是什麼意思'沒有固有的限制'?不會總是有最大的堆大小?
在documentation for Java's Runtime class它指出:Java的Runtime.maxMemory()何時會返回Long.MAX_VALUE?
返回Java虛擬機將嘗試使用的最大內存量。如果沒有固有限制,則返回值Long.MAX_VALUE。
這是什麼意思'沒有固有的限制'?不會總是有最大的堆大小?
所有這一切意味着規範不需要明確的上限存在。這必須反映在API中,否則maxMemory()
的API將與規範不一致。
我認爲你可以把它看作*沒有指定限制*,即不在vm啓動時,並且沒有默認值,它可能是虛擬機實現和/或操作系統特定的。請注意,此方法被聲明爲「native」 – A4L 2014-10-01 12:16:37