windows下:可以用在进程间同步的事件对象、互斥对象、信号量等;你可以搜到很多例子,或者看看windows核心编程方面的书。只能帮到这了,接分,呵呵。
就是一个加锁的问题,楼上说了不少,我觉得最好的方法就是共享内存+信号量了
互斥就行。
伪代码,思路大概是这样,具体代码网上应该很多资源
mutex=1;//信号量
progress 1
{
p(mutex)//判断其它进程是否在取钱
{
取钱;
}
v(mutex)//释放取钱资源
}
progress 2
{
p(mutex)
取钱;
v(mutex);
}
p(mutex)
{
if(mutex<=0)Lock(List);//如果有进程在使用资源,就将此进程放进阻塞队列;
mutex--;
}
v(mutex)
{
mutex++;
if(mutex<0)Release(List);//如果有进程释放资源,激活阻塞队列中的一个进程;
}
这不是类似于经典的成产者消费者问题嘛。