第一百八八章 内存泄漏(下)

编程之战 程序小猿 207 字 2024-05-17

“程序在运行过程中会不断地分配内存空间,那些不再使用的内存空间应该被即时回收,从而保证高效利用”。

“如果存在无用的内存没有被回收,这就是内存泄漏”。

杨成先给出通俗的定义。

“拿c程序来说,对象占用的内存空间都必须由程序员显式回收”。

“一旦程序员忘记回收,就会产生内存泄漏”。

“所以嘛,一个不负责任的c程序员是很危险的!”

“哈哈!”

在场的java程序员都笑了,表示自己毫无鸭梨。

“而对于java程序来说”。

杨成话锋一转。

“显然没有c这么多的顾虑,因为有垃圾回收机制”。

“但也不是高枕无忧喔!”

“java虚拟机采用有向图来管理内存中的对象”。

“如果有一些对象,处于有向图可访问的范围内,但程序以后永远都不会再使用它们,那么它们所占用的内存空间也不会被回收”。

“这就是java内存泄漏的原因!”