Pergunta

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?

Foi útil?

Solução

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.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top