얼마전까지 유니티에서 enum이나 struct에서를 Dictionary, List 등에서 사용하면 가비지가 발생하는 것으로 알고 사용하고 있었는데..
유니티 버전이 오르면서 .net 4 버전 이상을 사용하게 됐고
그에 따라 enum인지 체크해서 enum 전용으로 비교해준다고 함...
적당한 테스트 코드
using System.Collections.Generic;
using UnityEngine;
public class EnumTest : MonoBehaviour
{
enum TestType
{
Test1,
Test2,
Test3,
}
Dictionary<TestType, int> dic = new Dictionary<TestType, int> {
{ TestType.Test1, 1 },
{ TestType.Test2, 2 },
{ TestType.Test3, 3 }
};
void Start()
{
for (int i = 0; i < 100000000; i++)
{
var b = dic.ContainsKey(TestType.Test1);
}
}
}
결과
진짜 안 생겼다...
'개발 > Unity, C#' 카테고리의 다른 글
C# 을/를 이/가 은/는 등 조사 구별하기 (0) | 2022.05.05 |
---|---|
C# 생성자와 가상 함수 (0) | 2021.05.09 |
Unity 2Pass Outline Toon Shader (0) | 2020.12.26 |
Unity 하드웨어 스펙으로 자동 옵션 세팅하기 (0) | 2020.10.18 |
Unity 배경을 투명하게 캡처하는 방법 (1) | 2020.07.26 |