linux 互斥锁

Posted ForMeDream

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 互斥锁相关的知识,希望对你有一定的参考价值。

 1 #include<stdio.h>
 2 #include<pthread.h>
 3 #include<stdlib.h>
 4 #include<unistd.h>
 5 
 6 int num=0;
 7 pthread_mutex_t lock;
 8 pthread_t th;
 9 
10 
11 void* th_handler(void* p){
12     int i=0;
13     for(;i<10;i++){
14         pthread_mutex_lock(&lock);
15         num++;17         printf("sub num=%d
",num);
18         pthread_mutex_unlock(&lock);
19         sleep(1);
20     }
21 }
22 
23 
2425 int main(){
26 
27     pthread_mutex_init(&lock,NULL);
28     pthread_create(&th,NULL,th_handler,(void*)0);
    //pthread_detach(th);设置分离线程不需要pthread_join();
29 sleep(1); 30 int i=0; 31 for(;i<10;i++){ 32 pthread_mutex_lock(&lock); 33 num++;35 printf("main num=%d ",num); 36 pthread_mutex_unlock(&lock); 37 sleep(1); 38 } 39 pthread_mutex_destroy(&lock); 40 pthread_join(th,0); 41 42 }

 



以上是关于linux 互斥锁的主要内容,如果未能解决你的问题,请参考以下文章

互斥锁 & 共享锁

互斥锁自旋锁读写锁和条件变量

Linux-互斥-互斥锁-死锁

Linux互斥锁必须是全局的吗?

Linux:详解多线程(线程安全互斥和死锁)

linux基础编程—互斥锁