Package org.openjdk.jmh.runner
Class InfraControl
- java.lang.Object
-
- org.openjdk.jmh.runner.InfraControl
-
public class InfraControl extends Object
The InfraControl logic class. This is the rendezvous class for benchmark handler and JMH.
-
-
Field Summary
Fields Modifier and Type Field Description BenchmarkParams
benchmarkParams
boolean
isDone
Flag that checks for time expiration.boolean
isFailing
Flag that checks for failure experienced by any measurement thread.IterationParams
iterationParams
boolean
lastIteration
Control
notifyControl
CountDownLatch
preSetup
CountDownLatch
preTearDown
boolean
volatileSpoiler
CountDownLatch
warmdownDone
boolean
warmdownShouldWait
AtomicInteger
warmdownVisited
CountDownLatch
warmupDone
boolean
warmupShouldWait
AtomicInteger
warmupVisited
-
Constructor Summary
Constructors Constructor Description InfraControl(BenchmarkParams benchmarkParams, IterationParams iterationParams, CountDownLatch preSetup, CountDownLatch preTearDown, boolean lastIteration, Control notifyControl)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
announceDone()
void
announceWarmdownReady()
void
announceWarmupReady()
void
awaitWarmdownReady()
void
awaitWarmupReady()
long
getDuration()
long
getDuration(TimeUnit unit)
String
getParam(String name)
boolean
isLastIteration()
void
preSetup()
void
preSetupForce()
void
preTearDown()
void
preTearDownForce()
-
-
-
Field Detail
-
isDone
public volatile boolean isDone
Flag that checks for time expiration. This is specifically the public field, so to spare one virtual call.
-
isFailing
public volatile boolean isFailing
Flag that checks for failure experienced by any measurement thread. This is specifically the public field, so to spare one virtual call.
-
volatileSpoiler
public volatile boolean volatileSpoiler
-
preSetup
public final CountDownLatch preSetup
-
preTearDown
public final CountDownLatch preTearDown
-
lastIteration
public final boolean lastIteration
-
warmupVisited
public final AtomicInteger warmupVisited
-
warmdownVisited
public final AtomicInteger warmdownVisited
-
warmupShouldWait
public volatile boolean warmupShouldWait
-
warmdownShouldWait
public volatile boolean warmdownShouldWait
-
warmupDone
public final CountDownLatch warmupDone
-
warmdownDone
public final CountDownLatch warmdownDone
-
benchmarkParams
public final BenchmarkParams benchmarkParams
-
iterationParams
public final IterationParams iterationParams
-
notifyControl
public final Control notifyControl
-
-
Constructor Detail
-
InfraControl
public InfraControl(BenchmarkParams benchmarkParams, IterationParams iterationParams, CountDownLatch preSetup, CountDownLatch preTearDown, boolean lastIteration, Control notifyControl)
-
-
Method Detail
-
getDuration
public long getDuration()
- Returns:
- requested loop duration in milliseconds.
-
getDuration
public long getDuration(TimeUnit unit)
- Parameters:
unit
- timeunit to use- Returns:
- requested loop duration in the requested unit.
-
preSetup
public void preSetup()
-
preTearDown
public void preTearDown()
-
preSetupForce
public void preSetupForce()
-
preTearDownForce
public void preTearDownForce()
-
isLastIteration
public boolean isLastIteration()
-
announceDone
public void announceDone()
-
announceWarmupReady
public void announceWarmupReady()
-
announceWarmdownReady
public void announceWarmdownReady()
-
awaitWarmupReady
public void awaitWarmupReady()
-
awaitWarmdownReady
public void awaitWarmdownReady()
-
-