unity destory的坑

xxxxxxxxxxjh發表於2024-08-09

網上已經有相關資訊,這裡只是為自己記錄一下

destory
只是將他標記為需要刪除,並不會馬上刪除和清理快取,會在當前幀結束時(也即是在當前幀不能直接刪除掉所有的物體),將所有標記為需要刪除的物件,進行刪除和快取清理,它是非同步執行的,不會影響主執行緒的執行,並且更加節省效能。所以說在當前幀是不能刪除掉物件下的所有子物體

DestroyImmediate
實時刪除物件和清除快取,會導致主執行緒卡頓,也就是遊戲卡頓,並且每次都是單次呼叫,會導致消耗更多的資源,因為準備清除快取和快取清除之後的過程,都是需要消耗資源的。其次,使用DestroyImmediate會將物件下的所有子物體在場景和記憶體中都刪除掉,後續就不能再使用物件下的子物體。



參考:

https://blog.csdn.net/weixin_43932372/article/details/137479386
https://blog.csdn.net/makyocute/article/details/130240356

相關文章