网上已经有相关信息,这里只是为自己记录一下
destory
只是将他标记为需要删除,并不会马上删除和清理缓存,会在当前帧结束时(也即是在当前帧不能直接删除掉所有的物体),将所有标记为需要删除的对象,进行删除和缓存清理,它是异步执行的,不会影响主线程的执行,并且更加节省性能。所以说在当前帧是不能删除掉对象下的所有子物体
DestroyImmediate
实时删除对象和清除缓存,会导致主线程卡顿,也就是游戏卡顿,并且每次都是单次调用,会导致消耗更多的资源,因为准备清除缓存和缓存清除之后的过程,都是需要消耗资源的。其次,使用DestroyImmediate会将对象下的所有子物体在场景和内存中都删除掉,后续就不能再使用对象下的子物体。
参考:
https://blog.csdn.net/weixin_43932372/article/details/137479386
https://blog.csdn.net/makyocute/article/details/130240356