テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

メモリをすみやかに開放する

メモリを速やかに破棄するには、Disposeを使う。もっと面倒なくメモリを破棄したいならusingを使う。

とは言え、IDisposeを継承してるクラスはそんなに無いらしく、WWWとAndroidObjectくらいしか無いっぽい。まあ再利用しないのはこの2つくらいなので、問題はないはず。

使い方はこんな感じ。

Texture texture;
using( WWW www = new WWW(url))
{
yield return www;
texture = www.texture; // ?
}
// ?
?の所でTextureとWWW分のメモリを確保するが、?でちゃんと破棄されると思う。それにusingなら途中で処理を抜けてもWWWの破棄はちゃんと実行される…はず。うん、多分。

使ったメモリはお掃除しよう。約束だぞ!
まあ放っといても参照がなければ消えるけどね。(だがstatic、テメーは駄目だ)