标签:多线程程序 alt stdio.h sleep print exit lock 技术分享 pthread

工人1 /2干活模型程序设计
#include<pthread.h>
#include<stdio.h>
pthread_t thread[2];
int number=0;
pthread_mutex_t mut;
void *worker1()
{
    int i =0;
    
    printf("i am worker1\n");
    
    for(i=0;i<10;i++)
    {
        pthread_mutex_lock(&mut);
        number++;
        pthread_mutex_unlock(&mut);
        printf("worker1 numberis  %d\n",number);
        
        sleep(1);
    }
    
    pthread_exit(NULL);;
}
void *worker2()
{
    int i =0;
    
    printf("i am worker1\n");
    
    for(i=0;i<10;i++)
    {
        pthread_mutex_lock(&mut);
        number++;
        pthread_mutex_unlock(&mut);
        printf("worker2 numberis  %d\n",number);
        
        sleep(1);
    }
    
    pthread_exit(NULL);;
}
int  main()
{
    pthread_mutex_init(&mut,NULL);
     //创建工人1线程
    pthread_create(&thread[0], NULL,worker1,NULL);
    
     //创建工人2线程
     
    pthread_create(&thread[1], NULL,worker2,NULL);  
     
      //等待工人1线程结束
      pthread_join( thread[0], NULL);
      
      //等待工人1线程结束
       pthread_join( thread[1], NULL);
 
      
      return 0;
}
标签:多线程程序 alt stdio.h sleep print exit lock 技术分享 pthread
原文地址:http://www.cnblogs.com/1932238825qq/p/7371867.html