Package one.nio.lock
Class PaddedRWLock
- java.lang.Object
-
- java.util.concurrent.locks.AbstractOwnableSynchronizer
-
- java.util.concurrent.locks.AbstractQueuedSynchronizer
-
- one.nio.lock.RWLock
-
- one.nio.lock.PaddedRWLock
-
- All Implemented Interfaces:
java.io.Serializable
public class PaddedRWLock extends RWLock
Version of RWLock with cache line padding to prevent false sharing.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description PaddedRWLock()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longpreventOptimization()-
Methods inherited from class one.nio.lock.RWLock
downgrade, lockRead, lockRead, lockWrite, lockWrite, tryAcquireShared, tryReleaseShared, unlock, unlockRead, unlockWrite
-
Methods inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer
acquire, acquireInterruptibly, acquireShared, acquireSharedInterruptibly, compareAndSetState, getExclusiveQueuedThreads, getFirstQueuedThread, getQueuedThreads, getQueueLength, getSharedQueuedThreads, getState, getWaitingThreads, getWaitQueueLength, hasContended, hasQueuedPredecessors, hasQueuedThreads, hasWaiters, isHeldExclusively, isQueued, owns, release, releaseShared, setState, toString, tryAcquire, tryAcquireNanos, tryAcquireSharedNanos, tryRelease
-
-
-
-
Field Detail
-
p1
private volatile long p1
-
p2
private volatile long p2
-
p3
private volatile long p3
-
p4
private volatile long p4
-
p5
private volatile long p5
-
p6
private volatile long p6
-
p7
private volatile long p7
-
p8
private volatile long p8
-
p9
private volatile long p9
-
p10
private volatile long p10
-
p11
private volatile long p11
-
p12
private volatile long p12
-
p13
private volatile long p13
-
-