최대 1 분 소요

멀티 스레드

스레드의 특징

  • 프로세스 내에서 실행되는 흐름의 단위
  • 각 스레드 마다 Call Stack이 존재(call stack : 실행 중인 서브루틴을 저장하는 자료 구조)
  • 스레드는 다른 스레드와 독립적으로 동작

멀티 스레딩의 장점

프로세스를 이용하여 동시에 처리하던 일을 스레드로 구현할 경우, 메모리 공간이나 시스템 자원의 소모가 줄어든다. 스레드 간의 통신이 필요할 경우에도 별도의 자원을 이용하는 것이 아니라, 전역 변수의 공간 또는 동적으로 할당된 공간인 Heap 영역을 이용한다. 따라서, 프로세스 간 통신 방법에 비해 스레드 간의 통신 방법이 훨씬 간단하다. 시스템의 처리량이 향상되고 자원 소모가 줄어들어 자연스럽게 프로그램의 응답 시간이 단축 된다. 이런 장점 때문에 여러 프로세스로 할 수 있는 작업을 하나의 프로세스에서 스레드로 나눠 수행한다.

멀티 스레딩의 문제점

댓글남기기