2017-03-29 3 views

답변

0

은 ...

스레드

GCC 프로그램은

#include <pthread.h> 
int main(int argc, char *argv[]) { 

이 클래스/스케줄러와 이름을 시작을 -lpthread 그것 mulo

pthread_mutex_t mulo = PTHREAD_MUTEX_INITIALIZER; 

이것은 ac ondition는

pthread_mutex_init(&mulo, NULL); 

프로세스를 만들기 스코프/네임 스페이스 정의 스레드

pthread_t t1, t2, t3; 
pthread_t array[3]; // this is valid to set multiple variables 

에게있을 것입니다 구조체를 정의 중지하고 스레드

pthread_cond_t c = PTHREAD_COND_INITIALIZER; 

의 실행을 시작합니다

pthread_create(&t1, NULL, printMessage, NULL); 

또는 다만 ..

fork(); 

창조 검증 스레드 ID는 시간

pthread_mutex_lock(&mulo); 
pthread_mutex_unlock(&mulo); 
에서 실행할 수 pid_t 타입 (INT)

pid_t pid; 
pid = fork(); // All child processes return 0.. if error = -1 

자물쇠 (& 해제) 함수이므로 하나의 프로세스 만이

잠금 해제 신호 용

pthread_cond_signal(&c); 
pthread_cond_wait(&c, &mulo); 
스레딩 스레드 오프

pthread_create(&array[i], NULL, runCommand, (void *) &command); 

void *inc_count(void *idp) { 
    int passed_in_value = *((int *) idp); 
    . 
    . 
    . 
} 

마무리를

pthread_join(t1,NULL); 
pthread_join(t2,NULL); 
에서 값을 전달 기능

void *printMessage() { …. } 
pthread_create(&t1, NULL, printMessage, NULL); 

에 대한 포인터해야 사용개

모든 기능