Package hudson.util
Class OneShotEvent
java.lang.Object
hudson.util.OneShotEvent
Concurrency primitive.
A OneShotEvent
is like a pandora's box.
It starts with the closed (non-signaled) state.
Multiple threads can wait for the event to become the signaled state.
Once the event becomes signaled, or the pandora's box is opened, every thread gets through freely, and there's no way to turn it back off.
- Author:
- Kohsuke Kawaguchi
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
OneShotEvent
public OneShotEvent() -
OneShotEvent
-
-
Method Details
-
signal
public void signal()Non-blocking method that signals this event. -
block
Blocks until the event becomes the signaled state.This method blocks infinitely until a value is offered.
- Throws:
InterruptedException
-
block
Blocks until the event becomes the signaled state.If the specified amount of time elapses, this method returns null even if the value isn't offered.
- Throws:
InterruptedException
-
isSignaled
public boolean isSignaled()Returns true if a value is offered.
-