728x90
728x90
- [ 프로그래밍/Unity Engine ]Unity의 비동기 프로그래밍: 코루틴, 스레드, 그리고 최신 대안들2025-07-30 02:56:57들어가며얼마 전, 모 회사에서 "Unity Engine의 코루틴과 스레드의 차이점이 무엇인가?"에 대한 질문을 받았고, 제대로 대답하지 못하여 부끄러웠던 경험이 있었다. 때문에, 이 글을 바탕으로 이 둘의 공통점과 차이점 그리고 최신 대안들까지에 대한 것들을 정리해보고자 한다. Unity Engine은 비동기 프로그래밍을 위한 여러 접근 방식을 제공하며, 각각은 고유한 기술적 구현과 성능 특성을 가진다. 코루틴은 협력적 멀티태스킹을 사용하여 메인 스레드에서 실행되는 반면[^1], 스레드는 진정한 병렬성을 제공하지만 Unity API에 접근할 수 없다[^2]. 최신 Job System과 Burst 컴파일러는 두 방식의 장점을 결합하여 기존 접근법보다 10배에서 100배의 성능 향상을 달성하는 안전한 멀티스..
- [ 프로그래밍/CS Essentials ]KAIST PintOS - Project 01: Threads2024-03-17 23:56:26들어가며 현재 크래프톤 정글에서 KAIST PintOS를 구현하기 위해 개념 공부 및 팀 프로젝트를 진행하고 있다. 이 글에서는 크래프톤 정글에서 제공하는 가이드라인에 적힌 공부 키워드를 바탕으로 내가 이해하기 쉽도록 정리한 내용을 하나의 포스팅에 모아 다시 정리하는 것을 목표로 한다. Process, Thread Process (프로세스) 프로세스는 실행 중인 프로그램을 말함 운영 체제가 관리하는 작업의 단위로, 코드, 데이터, 힙(동적 할당 공간), 스택(함수 호출 시 매개변수, 지역 변수 등을 저장하는 공간) 등을 포함한 자신만의 독립된 메모리 공간을 가짐 프로세스는 최소 하나 이상의 스레드를 가지고 있음 각 프로세스는 별도의 주소 공간에서 실행되어 다른 프로세스와 자원을 공유하지 않음 프로세스 간..
728x90
728x90