unity中静态变量的使用

在最近unity3d的项目中,为了图方便使用了很多的静态变量,通常是单例类 (public static 类名 xxx )的使用,但是很少有在脚本使用结束后去将静态变量的值置为空,如果该脚本的成员变量中申请过内存空间 比如new byte[]或者存放了一些图片 Resources.load()等,那么即使该脚本对应的gameobject被删除了,这些成员变量中申请过的内存也不会被释放,另为Resource.load的图的内存还需要在调用Resources.UnloadUnusedAssets()后,才能释放。如果成员变量也为静态类型,仅仅将static的类名置空是无用的,还需要将对应的静态变量也置为空。

Unity3d中内存通常出现的ManagedStaticReferences就更静态变量的不规范使用有关系,以后得多注意了。

posted @ 2015-01-03 16:39  yerongsc  阅读(10784)  评论(0编辑  收藏  举报