信号量解决写者优先&读者优先&公平竞争(reader writer)

Posted lqerio

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了信号量解决写者优先&读者优先&公平竞争(reader writer)相关的知识,希望对你有一定的参考价值。

先说问题:

这里的rand都是伪随机。解决也很简单,srand即可。内容懒得改了~~

描述及思路:

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

代码:

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

运行结果:

 

技术图片
 

读者优先:

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

 

技术图片
 

效果图:

 

技术图片
 

 

技术图片
 

公平竞争:

只有读者写者线程做了一些修改。增加的信号量que。sem_init(&que,0,1)。

技术图片
 

 

技术图片
 

效果:

 

技术图片

以上是关于信号量解决写者优先&读者优先&公平竞争(reader writer)的主要内容,如果未能解决你的问题,请参考以下文章

读者写者问题(读者优先 写者优先 读写公平)

操作系统——读者写者问题(读者优先强写者优先 和 公平竞争)

用信号量和读写锁解决读者写者问题

读者写者问题

“读者-写者问题”的写者优先算法实现

操作系统-进程PV操作——读者写者问题