[Unity] 45. 멀티스레딩을 구현

Connected Brain·2025년 5월 9일

면접 질문 대비

목록 보기
45/60

Unity에서 멀티스레딩을 구현하기 위한 방법에 대해 설명해주세요.

멀티쓰레딩

Job System

  • 멀티쓰레드를 사용하기 위해 Unity에서 권장하는 방식은 Job System이 있음
  • 다른 쓰레드에서 실행할 작업을 'Job'으로 구분하고, 메인 쓰레드에서 해당 Job을 작업 쓰레드로 전달
// Job adding two floating point values together
public struct MyJob : IJob
{
    public float a;
    public float b;
    public NativeArray<float> result;

    public void Execute()
    {
        result[0] = a + b;
    }
}
  • 간단한 예시로 IJob 인터페이스를 가진 클래스에서 Execute()에 다른 쓰레드에서 작업할 내용을 정의하여 사용

그 외의 방법

  • Unity 오브젝트와 관계되지 않는 연산에 대해서는 C#에서 지원하는 멀티 쓰레드를 통해 구현할 수 있고, 이를 Unity에 적용하기 위해서는 추가적인 전달 과정이 필요함

0개의 댓글