Class LockManager<K>
java.lang.Object
com._1c.g5.v8.dt.internal.platform.services.core.LockManager<K>
- Type Parameters:
K
- key type
Produces locks for given keys with next rules:
- Already produced locks are unique by given keys in every time of usage while strong references to locks are reachable
- Locks are weak-referenced inside manager, and will be collected by GC after client references to locks would become unreachable.
clone(K)
method cause manager doesn't
hold strong references to keys.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract K
Clone given source key.protected Lock
Create new lock.createReference
(Lock lock) Create new reference to given lock instance.Returns a lock instance, that is unique by given key instance.
-
Constructor Details
-
LockManager
public LockManager()Constructor ofLockManager
.
-
-
Method Details
-
getLock
Returns a lock instance, that is unique by given key instance. Already produced locks are unique by given keys in every time of usage while strong references to locks are reachable.- Parameters:
key
- key to get lock for, cannot benull
- Returns:
- a lock instance, that is unique by given key instance, never
null
-
clone
Clone given source key. Method is intended to return new instance of key, that isequal
to given.- Parameters:
source
- source key to clone, cannot benull
- Returns:
- cloned key, never
null
-
createLock
Create new lock.- Returns:
- created lock instance, never
null
-
createReference
Create new reference to given lock instance.- Parameters:
lock
- lock to create reference for, cannot benull
- Returns:
- new reference to given lock instance, never
null
-