소프트웨어

[c++] mutex, 그는 자신이 걸어 놓은 lock을 통과할 수 있을까?

개발자_이훈규 2014. 2. 5. 15:13

1.

mutex로 걸어놓은 자신의 lock을 자신이 다시 lock에 접근했을 때 통과할 수 있을까?



2.

기본 바탕 코드


#include <stdio.h>                                                              

#include <pthread.h>                                                            

                                                                                

int main() {                                                                    

                                                                                

    pthread_mutex_t m_mutex;                                                    

    pthread_mutex_init(&m_mutex, NULL);                                         

                                                                                

    printf("Here is start point lock area\n");                                  

    pthread_mutex_lock(&m_mutex);                                               

                                                                                

    printf("Here is lock area\n");                                              

                                                                                

    pthread_mutex_unlock(&m_mutex);                                             

    printf("Here is out of lock area\n");                                       

                                                                                

                                                                                

    pthread_mutex_destroy(&m_mutex);                                            

    return 0;                                                                   

}    


출력이 순서대로 된다.



3.

lock을 한번 더 하니깐 통과하지 못한다.

아 통과해야지 똑똑한 건데.. 혹시 확인하는 방법은 없나?

대략 훑어보니깐 존재하지 않는다..


끝.