데드락
28편. 스레드(Thread) (1)
28편. 스레드(Thread) (1)
2012.08.25들어가기 앞서 스레드(thread)의 사전적 정의를 살펴보면 '실, 가닥'이라는 것을 알 수 있는데, 컴퓨터 세계에서 스레드를 떠올리면 아래와 같은 이미지일 것입니다. 여기서 프로세스는 간단히 말하면 실행 중인 프로그램을 말합니다. 프로세스는 위와 같이 여러 개의 실행 흐름, 즉 여러 개의 스레드를 가질 수 있습니다. 지금까지 우리가 본 프로그램은 어떤 작업을 수행하면 그 작업이 끝날 때까지 기다려야 다른 작업을 수행할 수 있었습니다. 이는 우리가 여태껏 하나의 스레드만 사용했기 때문입니다. 하지만 어떤 작업을 하면서 다른 작업을 동시에 수행하고 싶을 때는 어떻게 해야 할까요? 그러면 여러 개의 스레드, 즉 멀티스레드(multi-thread)를 사용하면 되지 않을까요? 수많은 프로그래밍 언어에서 멀티스레..