본문 바로가기

Programming/MFC

쓰레드

쓰레드

윈도우 운영체제에서 하나의 프로그램이 실행된 것은 하나의 프로세스가 생성된다는 의미와 같다.

운영체제 내부적으로 여러 논리적 코드를 관리하는 단위이다.

실행 파일을 실행하게 되면 하나의 프로세스가 생성되고 내부적으로는 하나의 쓰레드가 생성되어 실행되는 것이다.

프로세스는 쓰레드 실행의 단위가 된다.

쉽게 말해 프로세스를 하나의 집으로 생각한다면 그 집에서 거주하는 사람은 쓰레드인 것이다.

그렇다면 왜 쓰레드가 필요 하나면 하나의 쓰레드가 작업을 하는 것 보다 두개의 쓰레드가 같은시간에 더 많은 작업을 할 수 있기 때문이다.


작업자 쓰레드

MFC에서 쓰레드를 생성하는 함수는 AfxBeginThread() 함수 이다.

이 함수를 이용하면 특정 전역 함수를 별도의 쓰레드로 실행할 수 있다. 만일 여러번 같은 방식으로 호출하면 그 수만큼 쓰레드가 생성된다.

 
다이얼로그에서 버튼을 추가하여 다음 예제를 입력하게 되면 버튼을 누르면 메모장이 실행되는 예제이다.

메모장을 실행하게 되면 뒤에 창이 응답없음 상태가 된다.

'Programming > MFC' 카테고리의 다른 글

CWnd 클래스  (0) 2013.08.29