不经意间的内存泄露

作者: Babybus_Unity | 来源:发表于2015-12-17 14:22 被阅读66次

Babybus-u3d技术交流-不经意间的内存泄露

实践证明,所有继承至UnityEngine.Object的对象,都需要手动Destroy,否则必然导致内存泄露。

一般我们不会忘记Destroy GameObject对象,因为在层级树中可以看到。但是类似于AudioClip的对象却可能被我们忽略,unity中有个对象池管理这些东西,保存了它们的引用,所以不能自动垃圾回收(引用计数不为0)

如下面代码:

Destroy (audio.clip);audio.clip = Microphone.Start("", false, 30, 44100);

先前的Microphone.Start 返回的对象不仅仅被microphoneClip所引用,所以必须Destroy。

相关文章

  • Android 内存泄露及LeakCanary分析

    一.前言 在日常的Android开发中,不经意间就会造成内存泄露,如果持续泄露的话,那么最后会造成内存溢出,应用也...

  • 不经意间的内存泄露

    Babybus-u3d技术交流-不经意间的内存泄露 实践证明,所有继承至UnityEngine.Object的对象...

  • Android性能优化知识列表

    1. 内存泄露 内存泄露原因分析 如何规避内存泄露a. 如何使用高效的Map容器b. 如何避免无意间的自动封箱c....

  • 内存泄露系列文章(一) - 内存泄露原因及影响

    前言 内存泄露系列文章内存泄露系列文章(一) - 内存泄露原因及影响内存泄露系列文章(二) - 内存泄露监测及分析...

  • 内存泄露系列文章(三) - 内存泄露解决方案

    前言 内存泄露系列文章内存泄露系列文章(一) - 内存泄露原因及影响内存泄露系列文章(二) - 内存泄露监测及分析...

  • 内存溢出与内存泄露

    目录 [TOC] 1 内存泄露与内存溢出的区别 1.1 内存泄露 内存泄露(Memory Leak),指的是堆内存...

  • 内存泄漏详细分析

    首先,什么是内存泄露?经常听人谈起内存泄露,但要问什么是内存泄露,没几个说得清楚。内存泄露是指无用对象(不再使用的...

  • Java弱引用学习 WeakHashMap、ReferenceQ

    上一篇文章 Java内存泄露学习 ThreadLocal真的会内存泄露吗 提到ThreadLocal内存泄露的问题...

  • 内存优化

    内存泄露的原因 四种引用类型 常见的内存泄露 1.内部类导致内存泄露 Handler 2.Context导致内存泄...

  • 内存泄漏/管理

    ARC 下内存泄露的那些点performSelector延时调用导致的内存泄露iOS ARC下几种导致内存泄露的场...

网友评论

    本文标题:不经意间的内存泄露

    本文链接:https://www.haomeiwen.com/subject/dcrphttx.html