摘要:
如上图所示在startRead()函数中,我们先使用互斥锁防止两个或者两个以上的进程同时进行读操作,假设读进程1获得锁,现在它需要判断就绪队列和等待队列中是否还有写进程,如果有写进程那么当前获得锁的读进程执行okToRead.wait()操作,将当前读进程放入等待队列并且释放锁,知道条件变量满足条件 阅读全文
摘要:
使用buffer存储生产者生产的东西int enpty = n;//buffer中空的位置int full = 0;//buffer中能消费的位置int mutex = 1//互斥量生产者{ p(empty);//生产物质p(mutex)//使用互斥锁,保证临界区在一个时间段是能让一个进程访问v(m 阅读全文