Package net.bytebuddy.agent.builder
Class AgentBuilder.CircularityLock.Global
java.lang.Object
net.bytebuddy.agent.builder.AgentBuilder.CircularityLock.Global
- All Implemented Interfaces:
AgentBuilder.CircularityLock
- Enclosing interface:
- AgentBuilder.CircularityLock
@Enhance
public static class AgentBuilder.CircularityLock.Global
extends Object
implements AgentBuilder.CircularityLock
A circularity lock that holds a global monitor and does not permit concurrent access.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.agent.builder.AgentBuilder.CircularityLock
AgentBuilder.CircularityLock.Default, AgentBuilder.CircularityLock.Global, AgentBuilder.CircularityLock.Inactive
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
lock
The lock to hold. -
time
private final long timeThe time to wait for the lock. -
timeUnit
The time's time unit.
-
-
Constructor Details
-
Global
public Global()Creates a new global circularity lock that does not wait for a release. -
Global
Creates a new global circularity lock.- Parameters:
time
- The time to wait for the lock.timeUnit
- The time's time unit.
-
-
Method Details
-
acquire
public boolean acquire()Attempts to acquire a circularity lock.- Specified by:
acquire
in interfaceAgentBuilder.CircularityLock
- Returns:
true
if the lock was acquired successfully,false
if it is already hold.
-
release
public void release()Releases the circularity lock if it is currently acquired.- Specified by:
release
in interfaceAgentBuilder.CircularityLock
-