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 BenchmarkParamsbenchmarkParamsbooleanisDoneFlag that checks for time expiration.booleanisFailingFlag that checks for failure experienced by any measurement thread.IterationParamsiterationParamsbooleanlastIterationControlnotifyControlCountDownLatchpreSetupCountDownLatchpreTearDownbooleanvolatileSpoilerCountDownLatchwarmdownDonebooleanwarmdownShouldWaitAtomicIntegerwarmdownVisitedCountDownLatchwarmupDonebooleanwarmupShouldWaitAtomicIntegerwarmupVisited
-
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 voidannounceDone()voidannounceWarmdownReady()voidannounceWarmupReady()voidawaitWarmdownReady()voidawaitWarmupReady()longgetDuration()longgetDuration(TimeUnit unit)StringgetParam(String name)booleanisLastIteration()voidpreSetup()voidpreSetupForce()voidpreTearDown()voidpreTearDownForce()
-
-
-
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()
-
-