public class NamedLockPattern extends Object
// try to acquire named lock
boolean lockAcquired = namedLocker.acquireSynchronizationObject(namedObject, getLockTimeout());
if (lockAcquired)
{
try
{
// ... so sth here
}
finally
{
namedLocker.releaseSynchronizationObject(name);
}
}
else
{
// .. failed to obtain synchronization lock for component 'namedObject', possible deadlock
}
| Constructor and Description |
|---|
NamedLockPattern()
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
acquireSynchronizationObject(Object name,
long msec)
Acquire synchronization lock for named object.
|
void |
releaseSynchronizationObject(Object name)
Release synchronization lock for named object.
|
void |
releaseSynchronizationObject(Object name,
boolean release)
Release synchronization lock for named object.
|
public boolean acquireSynchronizationObject(Object name, long msec)
name - name of the object whose lock to acquire.msec - the number of milleseconds to wait.
An argument less than or equal to zero means not to wait at all.true if acquired, false othwerwise.public void releaseSynchronizationObject(Object name)
name - name of the object whose lock to release.public void releaseSynchronizationObject(Object name, boolean release)
name - name of the object whose lock to release.release - set to false if there is no need to call release
on synchronization lock.Copyright © 2004-2020 EPICS. All Rights Reserved.