Page 19 -
P. 19

코드 모던 C++
                      std::thread t1(ThreadProc, 123);
                                                                                                      1


                            게임 개발을 할 때는 C++뿐만 아니라 C#, 자바, 자바스크립트, 파이썬, Lua 등 다양하게 사용합니다. 우리는 여        멀티스레딩
                      기서 주로 C++를 사용하겠습니다. C++는 성능과 관련하여 부작용이 거의 없으며 대부분 플랫폼에서 사용할 수 있는 언
                      어이기 때문입니다.









                    1.3         멀티스레드 프로그래밍은 언제 해야 할까?
                                                                               GAM E SE RVER






                    “동시에 여러 가지 일을 한꺼번에 실행하는 프로그램이라니 뭔가 쿨하다!”라는 생각이 들겠지만,
                    멀티스레드 프로그래밍은 남용하면 굉장히 골치가 아플 수 있습니다. 뒤에서 이유를 설명하겠지
                    만, 똑같은 연산을 하더라도 멀티스레드로 할 경우 연산 속도가 훨씬 더 느려지기도 합니다. 그뿐

                    만 아니라 멀티스레드 프로그래밍은 조금만 실수해도 심각한 오류를 일으키며, 심지어 오류를 찾
                    기 힘들 때도 많습니다.

                    따라서 멀티스레드 프로그래밍을 하기 전에 “왜 해야 하지?”에 대한 답을 분명하게 할 수 있어야
                    합니다. 이것은 지금부터 설명하겠습니다.

                    멀티스레드 프로그래밍을 해야 하는 대표적인 상황은 다음과 같습니다.

                    1.  오래 걸리는 일 하나와 빨리 끝나는 일 여럿을 같이 해야 할 때
                    2.  어떤 긴 처리를 진행하는 동안 다른 짧은 일을 처리해야 할 때

                    3.  기기에 있는 CPU를 모두 활용해야 할 때














                                                                                                  027
   14   15   16   17   18   19   20   21   22   23   24