Java垃圾回收机制

Java垃圾回收机制

    今天,学习Java垃圾回收机制,因为发现内容太多,所以分为两天完成。

  • 是什么?

       java虚拟机(JVM)回收不在被使用的内存,称为java垃圾回收(Garbage Collection,也称为GC).通常JVM会在系统中创建一个超级线程,用来对内存进行检索、控制,并在CUP空闲时以及内存快到上线时,进行垃圾回收操作。程序员无法对垃圾回收的顺序、时间进行控制。建议JVM回收内存垃圾:1. 通过调用System.gc();       2. 将不再使用的对象设置为null; 但是什么时候回收还要取决于JVM。

  • 为什么Java会这样处理内存垃圾呢?

      回顾C/C++,对已分配的内存都是通过程序显示的回收;显示回收存在存在两个缺点:

          1. 漏删:忘记对已分配的内存进行回收(释放), 可能会造成程序性能下降以及内存泄露 问题。

          2. 错删:错误的将程序核心内存进行回收,可能会造成系统崩溃。

     java则不同,它的内存都是通过JVM进行自动回收。

      注: 内存泄露:从字面直观就不难理解,内存少于当初的内存总容量,因为内存泄露了。其实大概意思也差不多,因为程序员不可能知道所有的内存都什么时候该被回收,从而造成程序性能下降以及有可能造成系统瘫痪,这种现象成为内存泄露。

 

以上都是个人观点,希望对大家有帮助,如果存在错误、不足请大虾们多多指点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值