[Unity] OnDestroy()でゲームオブジェクトを生成するとゴミが残る問題

OnDestroy()コールバックでゲームオブジェクトをnewしたりプレハブからInstantiateするとゲームオブジェクトが解放されずにゴミが残ってしまうことがあります。

この現象の回避策は今のところOnDestroy()でインスタンス化しないことが最善策だと思います。

なぜゴミが残ってしまうかは原因が分かりません。