资料
  • 资料
  • 专题
Java的内存泄漏
推荐星级:
类别: 消费电子
时间:2020-01-10
大小:74KB
阅读数:218
上传用户:16245458_qq.com
查看他发布的资源
下载次数
0
所需E币
4
ebi
新用户注册即送 300 E币
更多E币赚取方法,请查看
close
资料介绍
Java的内存泄漏 Java的内存泄漏 Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此, 很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任 ,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的 表现与C++不同。 问题的提出 Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此, 很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任 ,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的 表现与C++不同。 随着越来越多的服务器程序采用Java技术,例如JSP,Servlet, EJB等,服务器程序往往长期运行。另外,在很多嵌入式系统中,内存的总量非常有限。 内存泄露问题也就变得十分关键,即使每次运行少量泄漏,长期运行之后,系统也是面 临崩溃的危险。 Java是如何管理内存 为了判断Java中是否有内存泄露,我们首先必须了解Java是如何管理内存的。Java的内 存管理就是对象的分配和释放问题。在Java中,程序员需要通过关键字new为每个对象申 请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。另外,对象的释放是由GC决定和执行的。在Java中,内存的分配是 由程序完成的,而内存的释放是有GC完成的,这种收支两条线的方法确实简化了程序员 的工作。但同时,它也加重了JVM的工作。这也是Java程序运行速度较慢的原因之一。因 为,GC为了能够正确释放对象,GC必须监控每一个对象的运行状态,包括对象的申请、 ……
版权说明:本资料由用户提供并上传,仅用于学习交流;若内容存在侵权,请进行举报,或 联系我们 删除。
PARTNER CONTENT
相关评论 (下载后评价送E币 我要评论)
没有更多评论了
  • 可能感兴趣
  • 关注本资料的网友还下载了
  • 技术白皮书