はじめに
作成したメソッドでアロケーションがされてるか調べる方法を定期的に忘れるのでメモ
環境は Unity 2021.3.25f1です
やり方
作成した処理をsampler.Begin();とsampler.End();で囲めば計測ができるようになります
using System.Collections.Generic; using UnityEngine; using UnityEngine.Profiling;//CustomSamplerで使用 public class Test : MonoBehaviour { CustomSampler _sampler = CustomSampler.Create("Test"); void Start() { TestFnuc(); } void TestFnuc() { _sampler.Begin(); // 計測 List<int> list = new List<int>(100); _sampler.End(); } }
あとはProfilerを起動して作成したCustomSamplerの名前で検索して見つかったら下の階層に見てGC.Allocをが呼ばれていたらアロケーションされていることがわかります