async/await
·
C#
1. 비동기 프로그래밍(Asynchronous Programming)의 필요성게임이나 인터랙티브 애플리케이션의 메인 스레드는 사용자 입력 처리, 게임 로직 업데이트, 화면 렌더링 등 매 프레임마다 수행해야 할 작업이 많습니다. 만약 이 메인 스레드에서 시간이 오래 걸리는 작업(예: 웹 서버에서 데이터 다운로드, 대용량 파일 저장)을 동기적으로(Synchronously) 실행하면, 해당 작업이 완료될 때까지 메인 스레드는 다른 모든 작업을 멈추게 됩니다. 이는 곧바로 애플리케이션 '멈춤' 현상(Freeze), 즉각적인 입력 반응 불가, 프레임 드랍 등으로 이어져 사용자 경험을 크게 해칩니다.비동기 프로그래밍은 이러한 문제를 해결하기 위해, 오래 걸리는 작업을 시작시킨 후 즉시 메인 스레드에게 제어권을 돌려..