java堆外内存泄漏排查 在Java里堆内存和栈内存有什么区别?
浏览量:2418
时间:2021-03-11 12:53:41
作者:admin
在Java里堆内存和栈内存有什么区别?
这源于古老的C语言概念。函数中基本数据类型(字符串除外)应用的所有局部变量,即函数退出时消失的变量,包括函数本身的参数定义,都使用堆栈内存来构造内存。这样做的目的是输入函数,将变量值放入堆栈,然后自动从堆栈中退出函数。内存应用和回收将自动完成。这些堆栈空间变量只能由函数本身引用,而其他函数不能。
C语言的全局变量和Java的对象,即C语言的malloc()函数和C、Java新构造的对象都在堆组织的内存中,因此许多函数都可以引用这些存储空间的值或对象。存储在堆空间中的对象和数据需要根据程序员的需要进行释放。例如,C语言使用free(),C语言使用析构函数,Java具有自动循环机制。
随便写。如果你有任何错误,不要喷。
java堆外内存泄漏排查 jvm内存设置多少合理 32G内存设置jvm多大
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。