Linux-同步互斥

  • 本文出自<svtter.github.io>

使用pthread实现经典问题:生产者消费者

关于semaphore的相关信息就不再贴出来了。

编译的时候记得-pthread选项。

运行结果

操作系统经典问题:哲学家就餐问题

mutex是c++11的新功能。记得添加C++11支持。(在运行结果中包含编译选项。)

运行结果

操作系统经典问题:读者写者问题

读者优先

  • 使用了c++11的新特性thread

运行结果

由于可以同时阅读,所以读者reading输出可能出现少许问题。

写者优先


  • 使rsem中只有一个读者在等待,保证了如果有写者,写者优先写

运行结果

  • 基本上结果就是写者写完,才会有读者阅读
cpp 

也可以看看