【发布时间】:2012-05-27 09:13:19
【问题描述】:
我在如何同步 2 个进程方面有点问题。第一个进程必须创建一个共享内存,然后等待第二个进程填充共享内存并将其返回给第一个进程。我不知道如何让第一个进程等待。
这是我的流程的伪代码:
进程1:
create shared memory
create a semaphore
wait for the second process /* this part i dont know how to write */
output the shared memory
进程2:
get shared memory id
get the semaphore id
wait();
fill the shared memory
signalize();
【问题讨论】:
-
在进程 2 中创建共享内存和信号量,并在进程 1 中获取共享内存和信号量 id,并在进程 1 中为共享内存执行 sem_wait,并在将数据复制到共享后在进程 2 中执行 sem_post记忆。
标签: linux memory semaphore shared