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