컴퓨터/Linux
리눅스 mutex 프로그래밍
Begi
2021. 10. 1. 00:37
반응형
리눅스에서 뮤텍스(mutex)는 다음과 같이 사용한다.
#include <pthread.h>
// mutex 선언
pthread_mutex_t mutex;
// mutex 초기화
pthread_mutex_init(&mutex,NULL);
// mutex 해제
pthread_mutex_destroy(&mutex);
// mutex lock
pthread_mutex_lock(&mutex);
// mutex unlock
pthread_mutex_unlock(&mutex);
mutex를 선언하고 초기화한후 lock이 필요한 지점에서 pthread_mutex_lock을 실행하고 빠져나올 때는 pthread_mutex_unlock을 실행한다.
pthread_mutex_lock을 실행했을 때 다른 쓰레드가 lock하고 있으면 다른 쓰레드가 unlock할때까지 blocking된다.
각 함수의 자세한 동작은 여기에서 확인한다.
반응형