224. StampedLock

In a nutshell, StampedLock performs better than ReentrantReadWriteLock and supports optimistic reads. It is not like reentrant; therefore, it is prone to deadlocks. Mainly, a lock acquisition returns a stamp (a long value) that it is used in the finally block for unlocking. Each attempt to acquire a lock results in a new stamp, and, if no lock is available, then it may block until available. In other words, if the current thread is holding the lock, and attempts to acquire the lock again, it may cause a deadlock.

The StampedLock read/write orchestration process is achieved via several methods as follows:

  • readLock(): Non-exclusively acquires the lock, blocking if necessary, until available. For a non-blocking attempt of ...

Get Java Coding Problems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.