zoukankan      html  css  js  c++  java
  • 笔记1 linux 多线程 互斥锁

    //mutex lock
    #include<stdio.h>
    #include<unistd.h>
    #include<pthread.h>
    
    struct test
    {
        char a[10];
        char b[10];
        char c[10];
    }yb = {"111","222","33333"};
    
    static int j=0;
    
    pthread_mutex_t mutex_1 = PTHREAD_MUTEX_INITIALIZER;;
    
    void Print1(struct test *arg)
    {
        pthread_mutex_lock(&mutex_1);
        printf("a=%s,b=%s,c=%s,d=%X,j=%d
    ",arg->a,arg->b,arg->c,pthread_self(),j++);
        pthread_mutex_unlock(&mutex_1);
        pthread_exit((void *)j);
        printf("Never Coming.
    ");
    }
    
    
    int main()
    {
        pthread_t pid1,pid2,pid3;
        void *set;
    
        pthread_create(&pid1,NULL,&Print1,&yb);
        pthread_create(&pid2,NULL,&Print1,&yb);
        pthread_create(&pid3,NULL,&Print1,&yb);
    
        pthread_join(pid1,&set);
        printf("pid1 exit coed %d
    ",(int)set);
        pthread_join(pid2,&set);
        printf("pid2 exit coed %d
    ",(int)set);
        pthread_join(pid3,&set);
        printf("pid3 exit coed %d
    ",(int)set);
    
        sleep(1);
        return 0;
    }
  • 相关阅读:
    1. 两数之和
    RabbitMQ主题交换机
    RabbitMQ路由
    RabbitMQ发布订阅
    RabbitMQ简介和安装
    55. 跳跃游戏
    63. 不同路径 II
    62. 不同路径
    6. Z 字形变换
    sql注入攻击与防御第一章(笔记)
  • 原文地址:https://www.cnblogs.com/sherlockhomles/p/4838314.html
Copyright © 2011-2022 走看看