美文网首页
信号量 semaphore 【未完成】

信号量 semaphore 【未完成】

作者: wjundong | 来源:发表于2019-12-23 09:34 被阅读0次

信号量本质上是一个非负的整数计数器,也是UNIX中古老的实现进程互斥和同步的手段。

// C program to demonstrate working of Semaphores 
#include <stdio.h> 
#include <pthread.h> 
#include <semaphore.h> 
#include <unistd.h> 
  
sem_t mutex; 
  
void* thread(void* arg) 
{ 
    //wait 
    sem_wait(&mutex); 
    printf("\nEntered..\n"); 
  
    //critical section 
    sleep(4); 
      
    //signal 
    printf("\nJust Exiting...\n"); 
    sem_post(&mutex); 
} 
  
  
int main() 
{ 
    sem_init(&mutex, 0, 1); 
    pthread_t t1,t2; 
    pthread_create(&t1,NULL,thread,NULL); 
    sleep(2); 
    pthread_create(&t2,NULL,thread,NULL); 
    pthread_join(t1,NULL); 
    pthread_join(t2,NULL); 
    sem_destroy(&mutex); 
    return 0; 
} 

相关文章

网友评论

      本文标题:信号量 semaphore 【未完成】

      本文链接:https://www.haomeiwen.com/subject/jfxznctx.html