摘 要: | 读者-作者问题有时候多线程之间共享数据时,是没有必要采取很严格的互斥约束的。当多个线程读取数据,偶尔一个线程写入数据的时候就是这种情况。这就是所谓的读者-作者问题。在这种情况下,采取单独的读写控制协议就不够了。如果允许多个同时读而只允许一个写效率就会很高。考虑下面这种情况:一个服务器程序在维护一组股票的价格,有一些客户端程序会读取或改写这些价格。服务器收到读的请求一般要比改变的请求多。如果这样,可以让多个线程同时读取数据而不不互相排斥,当一个线程想更新股票价格时,我们就必须保证此时没有线程读取或改写这个价格。
|