不经意间的内存泄露

作者: 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。

    相关文章

      网友评论

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

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