在一些exemples我没有看到,他们使用线程为 ,但我想只用叉子和1个私人旗语专用信号灯在C
我想要做一些简单的这样做:
#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<sys/types.h>
#include<semaphore.h>
int main() {
pid_t pid;
sem_t sema;
sem_init(&sema,1,0);
pid=fork();
if(pid==0) {
printf("first"); // want this first
sem_post(&sema);
}else{
sem_wait(&sema);
printf("second -_-");// and that second
}
return 0;
}
///////////////////////////////////
GCC pgm.c -pthread 。 /a.out
///////////////////// //////////////
输出: 第一
//////////////////////// //////////
所以最新的问题在这里?我希望它=>
第一第二-_-
或使用现代接口'shm_open',这是一个更简单的使用 – 2014-12-03 21:03:31