以下の内容はhttps://baba-s.hatenablog.com/entry/2019/09/09/080000より取得しました。


【Unity】.NET 4.x Equivalent なら Dictionary のキーに列挙型を使用しても GC Alloc は発生しない

概要

using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Profiling;

public enum JobType
{
    SOLDIER,
}

public class Example : MonoBehaviour
{
    private void Update()
    {
        var table = new Dictionary<JobType, string>
        {
            { JobType.SOLDIER, "王国兵士" },
        };

        var sampler = CustomSampler.Create( "# Dictionary" );
        sampler.Begin();
        var resultA = table[ JobType.SOLDIER ];
        sampler.End();
    }
}

上記のようなコードを .NET 3.5 Equivalent で実行すると

f:id:baba_s:20190906130649p:plain

GC Alloc が発生しますが

f:id:baba_s:20190906130707p:plain

.NET 4.x Equivalent なら GC Alloc は発生しません




以上の内容はhttps://baba-s.hatenablog.com/entry/2019/09/09/080000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14