关于读写器并发的任何java示例解决方案

关于读写器并发的任何java示例解决方案,java,concurrency,Java,Concurrency,有什么好的/很棒的java示例解决方案可以推荐,或者可以在这里编写和粘贴 我特别感兴趣的是这个wiki页面上的“由计数器互斥体保护的部分可以被一个合适的获取和添加原子指令所取代”(我猜它的意思是AtomicIntegerobjects)。这可能是你想的,也可能不是你想的,但是OpenJDK提供的读写锁的实现可能是这可能不是您的想法,但OpenJDK提供的读写锁的实现可能是我不确定我是否完全理解您的问题。 JDK中有一个与某些实现的接口,可用于解决读写器问题: ReadWriteLock维护一对关

有什么好的/很棒的java示例解决方案可以推荐,或者可以在这里编写和粘贴


我特别感兴趣的是这个wiki页面上的“由计数器互斥体保护的部分可以被一个合适的获取和添加原子指令所取代”(我猜它的意思是
AtomicInteger
objects)。

这可能是你想的,也可能不是你想的,但是OpenJDK提供的读写锁的实现可能是

这可能不是您的想法,但OpenJDK提供的读写锁的实现可能是

我不确定我是否完全理解您的问题。 JDK中有一个与某些实现的接口,可用于解决读写器问题:

ReadWriteLock维护一对关联锁,其中一个用于 只读操作和一个用于写入的操作。可以保持读取锁 由多个读卡器线程同时执行,只要没有 作家。写锁是独占的


这里有一个问题。

我不确定我是否完全理解你的问题。 JDK中有一个与某些实现的接口,可用于解决读写器问题:

ReadWriteLock维护一对关联锁,其中一个用于 只读操作和一个用于写入的操作。可以保持读取锁 由多个读卡器线程同时执行,只要没有 作家。写锁是独占的


这是一本。

“Java并发实践”是迄今为止关于Java主题的最好的书。@toto2,我在这本书中没有找到很多好的例子,特别是关于这个读者-作者主题,更不用说使用fetch和add原子指令来实现解决方案了。好的,这是可能的。他们对低级的东西没有太多的细节:他们建议不要接触低级的东西,而是坚持使用java.util.concurrent中的高级实用程序。我不知道你是否只是为了好玩而看这个问题,但是如果你想解决一个真正的问题,你可能还想坚持更高层次的结构。编写代码更容易,维护性也更好(未来的开发人员会仔细阅读代码)。《Java并发性实践》是迄今为止关于Java主题的最好的书。@toto2,我在这本书中没有找到很多好的例子,特别是关于这个读写器主题,更不用说使用fetch和add原子指令来实现解决方案了。他们对低级的东西没有太多的细节:他们建议不要接触低级的东西,而是坚持使用java.util.concurrent中的高级实用程序。我不知道你是否只是为了好玩而看这个问题,但是如果你想解决一个真正的问题,你可能还想坚持更高层次的结构。编写代码更容易,而且对可维护性也更好(未来的开发人员会仔细检查代码)。我更感兴趣的是使用AtomicInteger来解决读写器问题。你知道更多的信息吗?@QiangLi我认为答案中使用的ReentrantReadWriteLock使用CAS操作来实现读/写锁,使用Sun的不安全类,类似于原子变量的使用方式。您可能需要检查ReentrantReadWriteLock的源代码。我更感兴趣的是使用AtomicInteger来解决读写器问题。你知道更多的信息吗?@QiangLi我认为答案中使用的ReentrantReadWriteLock使用CAS操作来实现读/写锁,使用Sun的不安全类,类似于原子变量的使用方式。您可能需要检查源代码中的ReentrantReadWriteLock。