Uses of Class
org.eclipse.persistence.internal.helper.ReadLockManager
Packages that use ReadLockManager
Package
Description
-
Uses of ReadLockManager in org.eclipse.persistence.internal.helper
Methods in org.eclipse.persistence.internal.helper that return ReadLockManagerModifier and TypeMethodDescriptionReadLockManager.clone()Create a new instanceReadLockManagerthat is in all regards equal to the current instance.static ReadLockManagerConcurrencyManager.getReadLockManager(Thread thread) The method is not synchronized because for now we assume that each thread will ask for its own lock manager.protected static ReadLockManagerConcurrencyManager.getReadLockManagerEnsureResultIsNotNull(Thread thread) Same asConcurrencyManager.getReadLockManager(Thread)but in this case a not null result is ensuredMethods in org.eclipse.persistence.internal.helper that return types with arguments of type ReadLockManagerModifier and TypeMethodDescriptionConcurrencyUtil.cloneReadLockManagerMap(Map<Thread, ReadLockManager> readLockManagersOriginal) To facilitate algorithms that want to dump a snapshot of the current state of the concurrency manager or to start a hunt for dead locks this api faciliates the boostraping logic of such algorithms by giving the algorithm a stable clone of the map of read locks that we know will not change throughout the time the algorithm is running.protected static Map<Thread, ReadLockManager> ConcurrencyManager.getReadLockManagers()Return the deferred lock manager hashtable (thread - DeferredLockManager).protected static Map<Thread, ReadLockManager> ConcurrencyManager.getReadLockManagersSnapshot()Return snapshot of the deferred lock manager hashtable (thread - DeferredLockManager).Methods in org.eclipse.persistence.internal.helper with parameters of type ReadLockManagerModifier and TypeMethodDescriptionprotected StringConcurrencyUtil.createInformationAboutAllResourcesAcquiredAndDeferredByThread(ReadLockManager readLockManager, DeferredLockManager lockManager, Set<ConcurrencyManager> waitingOnAcquireCacheKeys, ConcurrencyManager waitingOnAcquireReadCacheKey, boolean threadWaitingToReleaseDeferredLocks, Thread thread, int currentThreadNumber, int totalNumberOfThreads, Set<Object> writeManagerThreadPrimaryKeysWithChangesToBeMerged, String waitingToReleaseDeferredLocksJustification) Build a string that tries to describe in as much detail as possible the resources associated to the current thread.protected StringConcurrencyUtil.currentThreadIsStuckForSomeTimeProduceTinyLogMessage(long elapsedTime, ConcurrencyManager concurrencyManager, DeferredLockManager lockManager, ReadLockManager readLockManager) We have a thread that is not evolving for quite some while.booleanConcurrencyUtil.determineIfReleaseDeferredLockAppearsToBeDeadLocked(ConcurrencyManager concurrencyManager, long whileStartTimeMillis, DeferredLockManager lockManager, ReadLockManager readLockManager, boolean callerIsWillingToAllowInterruptedExceptionToBeFiredUpIfNecessary) Throw an interrupted exception if appears that eclipse link code is taking too long to release a deferred lock.Method parameters in org.eclipse.persistence.internal.helper with type arguments of type ReadLockManagerModifier and TypeMethodDescriptionConcurrencyUtil.cloneReadLockManagerMap(Map<Thread, ReadLockManager> readLockManagersOriginal) To facilitate algorithms that want to dump a snapshot of the current state of the concurrency manager or to start a hunt for dead locks this api faciliates the boostraping logic of such algorithms by giving the algorithm a stable clone of the map of read locks that we know will not change throughout the time the algorithm is running. -
Uses of ReadLockManager in org.eclipse.persistence.internal.helper.type
Methods in org.eclipse.persistence.internal.helper.type that return types with arguments of type ReadLockManagerModifier and TypeMethodDescriptionConcurrencyManagerState.getReadLockManagerMapClone()Getter forConcurrencyManagerState.readLockManagerMapCloneConstructor parameters in org.eclipse.persistence.internal.helper.type with type arguments of type ReadLockManagerModifierConstructorDescriptionConcurrencyManagerState(Map<Thread, ReadLockManager> readLockManagerMapClone, Map<Thread, DeferredLockManager> deferredLockManagerMapClone, Map<Thread, Set<ConcurrencyManager>> unifiedMapOfThreadsStuckTryingToAcquireWriteLock, Map<Thread, String> unifiedMapOfThreadsStuckTryingToAcquireWriteLockMethodName, Map<Thread, ConcurrencyManager> mapThreadToWaitOnAcquireReadLockClone, Map<Thread, String> mapThreadToWaitOnAcquireReadLockCloneMethodName, Set<Thread> setThreadWaitingToReleaseDeferredLocksClone, Map<Thread, String> mapThreadsThatAreCurrentlyWaitingToReleaseDeferredLocksJustificationClone, Map<ConcurrencyManager, CacheKeyToThreadRelationships> mapOfCacheKeyToDtosExplainingThreadExpectationsOnCacheKey, Map<Thread, Set<Object>> mapThreadToObjectIdWithWriteLockManagerChangesClone, Map<Thread, String> mapThreadsToWaitMergeManagerWaitingDeferredCacheKeys) Create a new ConcurrencyManagerState.