C# 内存管理疑问//TODO

来源:互联网 发布:手机淘宝官网登录页面 编辑:程序博客网 时间:2024/05/11 00:39

在C# Unity中每一帧有一个

newtex = new Texture2D(webTex.widthwebTex.heightTextureFormat.RGBA32false);

当我在iOS运行时,查看内存使用发现这块内存并没有在每一帧结束之后释放。

由于对于C#的GC还不是特别清楚,并不知道这块内存到底会在什么时候回收。

C#内存管理是由GC来控制的。

如果不想让GC自动回收资源,则需要调用GCHandle::alloc()方法,同时在最后需要调用GCHandle.release()来手动释放调这个资源。

所以在这里每一帧new 出来的需要绑定一个GCHandle来手动释放。

0 0
原创粉丝点击