Programmer:)

Thread 스레드 본문

공부(개발)/ETC

Thread 스레드

ryeggg 2023. 6. 14. 17:13
반응형

스레드

프로그램 내 프로세스 내에서 실행되는 흐름의 단위

일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. (멀티스레드)

 

스레드를 사용하면 여러 작업을 동시에 수행할 수 있다.

예를 들어 게임에서 주 스레드는 게임로직을 실행하고, 별도의 스레드는 리소스 로딩이나 네트워스 통신 등의 작업을 동시에 처리 할 수 있다. 이렇게 병렬적으로 작업을 처리하면 응용프로그램의 성능을 향상시킬 수 있다.

 

스레드는 여러가지 환경에서 사용될 수 있으며, 다중 코어 프로세서 시스템에서는 병렬 처리를 지원하여 성능을 향상시키는 데 도움이 된다. 그러나 스레드를 사용할 때 스레드간의 안전성, 동기화, 경합조건들을 고려해야 하며, 잘못된 사용은 예기치않은 결과를 초래할 수 있다. 그러므로 스레드를 다룰 때에는 신중하게 설계하고 관리해야한다.

 

 

Unity는 기본적으로 단일스레드 모델을 사용하며 게임 로직과 렌더링을 담당하는 주 스레드가 있다. 그러나 때대로 멀티스레딩이 필요한 작업이 있을 수 있다.

UnityAPI를 사용하는 대부분의 작업은 주 스레드에서만 수행해야만 한다. 주 스레드가 아닌 스레드에서 호출하면 문제가 발생될 수 있다.

 

Unity에서 다른 스레드의 데이터를 접근을 해야할 경우

다른 스레드에서 데이터처리가 완료된 후, 주 스레드를 통해 해당 데이터를 업데이트하여 사용!

반응형
Comments