게임 서버 - 멀티쓰레드 개론
멀티쓰레드란멀티쓰레드란 단순히 하나의 프로그램에 여러 개의 쓰레드를 갖고 있는 것을 의미한다.기본적으로 하나의 CPU 코어는 하나의 쓰레드만을 실행할 수 있다. 만약 하나의 CPU코어가 있다고 가정할 때 여러 프로그램에 쓰레드를 배치하고 동시에 실행시킨다면 어떻게 될까?하나의 CPU 코어가 쓰레드를 빠르게 옮겨다니며 실행될 것이다.Rookiss님의 강의에서는 고급 레스토랑에 비유를 했다.고급 레스토랑에는 계산대, 주방, 테이블과 여러 로봇 직원이 있을 수 있는데 이는 프로세스(프로그램)에 비유할 수 있으며, 프로그램 내에는 DB, 클라이언트 세션, 게임 로직 등 다양한 구성이 있으며 로봇 직원은 쓰레드에 비유할 수 있다.쓰레드들은 Heap 영역(new) 와 데이터 영역 (static 변수) 은 공유해서 ..
2024. 12. 9.
최근댓글