程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Linux下C編程:線程互斥實例

Linux下C編程:線程互斥實例

編輯:關於C語言
/*編譯時注意,要手動連接庫*/ 
#include <stdio.h>       
#include <pthread.h>       
#include <unistd.h>       
#include <stdlib.h>       

static int value = 0;       
pthread_mutex_t mutex;       

void func(void* args)
{       
    while(1)       
    {       
        pthread_mutex_lock(&mutex);       
        sleep(1);       
        value ++;       
        printf("value = %d!\n", value);       
        pthread_mutex_unlock(&mutex);       
    }       
}       

int main()       
{       
    pthread_t pid1, pid2;       
    pthread_mutex_init(&mutex,NULL);         
          
    if(pthread_create(&pid2,NULL,&func,NULL))       
    {       
        return -1;       
    }       
          
    if(pthread_create(&pid1,NULL,&func,NULL))       
    {       
        return -1;       
    }       
    while(1)       
        sleep(0);       
          
    return 0;       
}

編譯時要手動連接庫:詳細說明見:http://blog.csdn.net/muge0913/article/details/7340126

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved