2007년 3월 6일 화요일

pthread 사용법 [1]

pthread를 사용하는 방법에 대해 쉽게 설명하고자 한다.
이 글은 thread가 무엇인지 기본적인 사항을 알고 있는 사람을 대상으로 한다.

pthread는 다음의 두가지 함수를 그 시작과 끝으로 한다.

#include

int pthread_create(pthread_t *thread,
const pthread_attr_t *attr,
void *(*start_routine)(void*), void *arg);
int pthread_join(pthread_t thread, void **value_ptr);


pthread_create () 함수는 thread를 생성하기 위한 함수이다. 이 함수에서 가장 중요한 매개변수는 thread과 start_routine, arg 이다.
  • thread는 생성된 thread에 접근하기 위한 handle을 반환한다.
  • start_routine은 thread의 main 함수를 지정한다.
  • arg는 main 함수에 전달할 값이다.

pthread_join () 함수는 종료된 thread의 자원을 회수하는 역할을 한다. 함수가 호출되는 시점에서 thread가 종료될 때까지 대기한다.
  • thread는 thread에 대한 handle 값이다.
  • value_ptr은 thread가 종료할 때 pthread_exit () 함수를 호출하여 설정한 값을 가져온다.
간단한 사용방법은 다음과 같다.

댓글 없음: