Вопрос

I am implementing a database which can read and write data. For concurrency issue, I need to implement lock. Normally, ReentrantReadWriteLock will let write execute before read. How Can I go reversely? Is there a way that I can read before write thread executes?

Это было полезно?

Решение

Re-read the javadoc of ReentrantReadWriteLock. It doesn't impose any order between reads and writes. All it does is allowing concurrent reads, but disallowing concurrent writes and writes concurrent with reads.

This class has the following properties:

Acquisition order

  • This class does not impose a reader or writer preference ordering for lock access. However, it does support an optional fairness policy.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top