pthread 에 관한 질문 2가지?
글쓴이: air74 / 작성시간: 수, 2004/10/13 - 9:36오전
안녕하세요.
질문은 다음과 같습니다.
1. pthread 는 pthread_create() 함수로만 생성이 가능 한가요? pthread_once() 함수로는 생성이 되지 않나요? 하지만 pthread_once() 함수를 통하여 pthread 가 create 되는거 같은데.. 제가 잘 못 생가 하는 건가요?
2. pthread_mutex_init .... lock 등 mutex 관련 개념들은 pthread 에서만 사용 가능 한가요? pthread 가 create 하지 않고 상기 개념을 사용이 가능 한가요?
그럼 좋은 하루 되세요.
Forums:
1. pthread 의 쓰레드는 pthread_create() 로만 생성
1. pthread 의 쓰레드는 pthread_create() 로만 생성됩니다. pthread_once 의 사용처는 따로 있습니다. 쓰레드 시작 함수를 여러 쓰레드가 같이 사용할 수 있는데, 이때 처음으로 호출될 경우에만 pthread_once 에 넘겨진 함수가 호출되고 다음 번부터는 호출되지 않도록하는 것입니다. 딱 한번만 호출되어야 하는 경우가 꼭 있습니다.
2. pthread_mutex_* 류의 함수들은 서로 다른 쓰레드끼리의 공유 자원 충돌을 방지하기 위해서 있는 것입니다. 하나의 프로세스에 하나의 쓰레드만 있다면 그것을 써도 아무런 효과를 보지 못할 것입니다.
댓글 달기