为什么Java不像.NET CLR那样在达到操作系统所强制的进程内存限制之前扩展堆大小?
这是JVM开发者制定的政策,还是.NET CLR架构优于JVM架构的一个优势?换句话说,如果Oracle工程师想要为JVM实现自动堆扩展,他们能做到吗?
编辑:我真的认为这是Java的一个糟糕的设计选择。将Xmx设置得尽可能高(例如100 GB!)是不安全的。如果用户需要在更大的数据上运行我的代码,他可以在可用RAM更多的系统上运行它。为什么我作为开发人员需要设置程序的最大可用内存?我不知道数据的大小!!!
这是JVM开发者制定的政策,还是.NET CLR架构优于JVM架构的一个优势?换句话说,如果Oracle工程师想要为JVM实现自动堆扩展,他们能做到吗?
编辑:我真的认为这是Java的一个糟糕的设计选择。将Xmx设置得尽可能高(例如100 GB!)是不安全的。如果用户需要在更大的数据上运行我的代码,他可以在可用RAM更多的系统上运行它。为什么我作为开发人员需要设置程序的最大可用内存?我不知道数据的大小!!!