public class LockCriticalSectionExecutor extends Object implements CriticalSectionExecutor
Lock
as the underlying
mechanism for synchronization.Constructor and Description |
---|
LockCriticalSectionExecutor(Lock lock)
Creates a
CriticalSectionExecutor . |
Modifier and Type | Method and Description |
---|---|
void |
execute(Instruction instruction)
Executes a set of instructions as critical section (Mutual excluded).
|
void |
execute(Instruction instruction,
javax.measure.Measurable<javax.measure.quantity.Duration> timeout)
Executes a set of instructions as critical section (Mutual excluded).
|
<T> T |
execute(Procedure<T> procedure)
Executes a procedure as critical section (Mutual excluded).
|
<T> T |
execute(Procedure<T> procedure,
javax.measure.Measurable<javax.measure.quantity.Duration> timeout)
Executes a procedure as critical section (Mutual excluded).
|
public LockCriticalSectionExecutor(Lock lock)
CriticalSectionExecutor
.lock
- lockpublic void execute(Instruction instruction)
CriticalSectionExecutor
execute
in interface CriticalSectionExecutor
instruction
- instruction to executepublic void execute(Instruction instruction, javax.measure.Measurable<javax.measure.quantity.Duration> timeout) throws TimeoutException
CriticalSectionExecutor
execute
in interface CriticalSectionExecutor
instruction
- instruction to executetimeout
- the maximum time to wait, null to wait indefinitelyTimeoutException
- if the operation times outpublic <T> T execute(Procedure<T> procedure)
CriticalSectionExecutor
execute
in interface CriticalSectionExecutor
procedure
- procedure to executepublic <T> T execute(Procedure<T> procedure, javax.measure.Measurable<javax.measure.quantity.Duration> timeout) throws TimeoutException
CriticalSectionExecutor
execute
in interface CriticalSectionExecutor
procedure
- procedure to executetimeout
- the maximum time to wait, null to wait indefinitelyTimeoutException
- if the operation times outCopyright © 2015. All Rights Reserved.