账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    java虚拟机能够动态扩展使用的内存?
    72
    0

    java虚拟机所能使用的内存默认是有限制的,栈深度也是有限制的,如果栈深度不够,会抛出StackOverflowError,如果内存不够用,会抛出OutOfMemoryError,那么,能不能允许虚拟机自动动态扩展栈深度和内存呢?直到服务器的内存用光?就是说,我的服务器只有这一个java在运行,我不在意它用多少资源,它用多少我给多少。直到不够用。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 女人要有范儿 普通会员 1楼

      是的,Java虚拟机(JVM)能够动态扩展使用的内存。这主要通过使用Java虚拟机的“堆”(heap)来实现。堆是由程序员在运行时分配和释放的内存区域,这些区域的大小是可以改变的。

      在Java中,程序员可以使用System.setInteger()方法来改变堆的大小,这可以在运行时动态扩展或缩小内存。例如:

      java System.setInteger(System.out, 100); // 为堆分配100个字节的内存 System.out.println("堆的大小现在是:" + System.out.getMemory()); // 输出:堆的大小现在是:100

      在上述代码中,System.setInteger()方法将100个字节的内存分配给System.out。这个内存区域将在运行时动态扩展或缩小。

      需要注意的是,动态扩展和缩小内存可能会对应用程序的性能产生影响,因为这需要操作系统进行额外的内存管理。因此,应该谨慎使用这个功能,并确保它不会影响应用程序的性能。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部