Zenject 실행 속도 확인
개요
최근 젠ject를 사용했는데 자꾸 인ject가 무겁다고 느껴져 동작 속도를 구체적으로 조사해봤다.
조사 방법
Prefab의 팩토리크리에이트의 동작 속도를 조사하고 싶습니다.
Prefab의 팩토리크리에이트의 동작 속도를 조사하고 싶습니다.
코드
using Zenject;
public class TestInstaller : MonoInstaller
{
public override void InstallBindings()
{
Container.BindFactory<TestMonoBehaviour, TestMonoBehaviour.Factory>().FromComponentInNewPrefabResource("TestPrefab 3");
}
}
using UnityEngine;
using Zenject;
public class TestMonoBehaviour : MonoBehaviour
{
public class Factory : Factory<TestMonoBehaviour>
{
}
}
using UnityEngine;
using Zenject;
public class TestMain : MonoBehaviour
{
[Inject]
private TestMonoBehaviour.Factory _factory;
void Update ()
{
var obj = _factory.Create();
Destroy(obj.gameObject);
}
}
using UnityEngine;
public class TestMonoBehaviour2 : MonoBehaviour
{
}
using UnityEditor;
public class AutoMonoBehaviourSetter : Editor {
[MenuItem("Tools/Set MonoBehaviours")]
public static void SetMonoBehaviours()
{
for (var i = 0; i < 200; i++)
{
Selection.gameObjects[0].AddComponent<TestMonoBehaviour2>();
}
}
}
201개의 GameObject Prefab 삽입
201개의 Component Prefab 삽입
결실
GameObject 1개, Component 1개
GameObject 201개, Component 1개
GameObject 201개, Component 201개
GameObject 1개의 경우 201개의 Component
총결산
GameObject
Component
Time ms
GC Allock
1
1
0.26ms
4.4KB
201
1
1.08ms
4.4KB
1
201
11.62ms
484.8KB
201
201
14.08ms
0.5MB
Reference
이 문제에 관하여(Zenject 실행 속도 확인), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/notargs/items/d475ff541a5bb1d3667b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)