Linux C多线程学习

2020-12-13 04:13

阅读:503

标签:turn   mail   pthread   线程   time   多线程   ted   unlock   amp   

/*************************************************************************
    > File Name: eg4.c
    > Author: 
    > Mail: 
    > Created Time: 2019年06月29日 星期六 10时56分11秒
 ************************************************************************/

#include
#include
#include

pthread_mutex_t lock;
int s = 0;
void* myfunc(void* args){
    int i = 0;
    for(i=0; i1000000; i++){
        pthread_mutex_lock(&lock);
        s++;
        pthread_mutex_unlock(&lock);
    }
    return NULL;
}
int main(){
    pthread_t th1;
    pthread_t th2;
    pthread_mutex_init(&lock, NULL);

    pthread_create(&th1, NULL, myfunc, NULL);
    pthread_create(&th2, NULL, myfunc, NULL);

    pthread_join(th1, NULL);
    pthread_join(th2, NULL);
    printf("s=%d\n", s);

}

多线程加锁

 

/*************************************************************************
    > File Name: test1.c
    > Author: 
    > Mail: 
    > Created Time: 2019年06月28日 星期五 21时12分51秒
 ************************************************************************/

#include
#include
#includevoid* myfunc(void* args){
    int i;
    char* name = (char*)args;
    for(i=1;i50;i++){
        printf("%s:%d\n", name, i);
    }

    return NULL;
}


int main(){
    pthread_t th1;
    pthread_t th2;

    pthread_create(&th1, NULL, myfunc, "th1");
    pthread_create(&th2, NULL, myfunc, "th2");
    pthread_join(th1, NULL);
    pthread_join(th2, NULL);

    return 0;
}

 

Linux C多线程学习

标签:turn   mail   pthread   线程   time   多线程   ted   unlock   amp   

原文地址:https://www.cnblogs.com/xjyxp/p/11106085.html


评论


亲,登录后才可以留言!