pthread2 pthread_mutex_lock

来源:互联网 发布:苹果软件购买记录 编辑:程序博客网 时间:2024/05/18 19:38
#include <stdio.h>#include <stdlib.h>#include <pthread.h>#include <errno.h>#define oops(msg) {perror(msg); exit(errno);}int g_counter = 0;pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER;void* add_function(){int i;for(i = 0; i < 100; i++){pthread_mutex_lock(&mutex1); //pthread_mutex_lockg_counter += 2;pthread_mutex_unlock(&mutex1);}}int main(){    pthread_t thread1, thread2;    if(pthread_create(&thread1, NULL, add_function, NULL))    oops("pthread_create the thread1");    if(pthread_create(&thread2, NULL, add_function, NULL))    oops("pthread_create the thread2");    pthread_join(thread1, NULL);    pthread_join(thread2, NULL);    printf("g_counter = %d\n", g_counter);    return 0;}

原创粉丝点击