public class Scheduler extends Object implements org.junit.runners.model.RunnerScheduler
ParentRunner.setScheduler(org.junit.runners.model.RunnerScheduler)
.
Modifier and Type | Class and Description |
---|---|
class |
Scheduler.ShutdownHandler
There is a way to shutdown the hierarchy of schedulers.
|
Constructor and Description |
---|
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy)
Should be used with individual pools on suites, classes and methods, see
ParallelComputerBuilder.useSeparatePools() . |
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy,
Balancer balancer)
Can be used by e.g.
|
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy,
int concurrency) |
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
SchedulingStrategy strategy)
Use e.g.
|
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
SchedulingStrategy strategy,
Balancer balancer)
New instances should be used by schedulers with limited concurrency by balancer
against other groups of schedulers.
|
Scheduler(ConsoleStream logger,
org.junit.runner.Description description,
SchedulingStrategy strategy,
int concurrency)
Should be used if schedulers in parallel children and parent use one instance of bounded thread pool.
|
Modifier and Type | Method and Description |
---|---|
protected void |
afterExecute() |
protected void |
beforeExecute() |
protected ShutdownResult |
describeStopped(boolean stopNow)
Attempts to stop all actively executing tasks and immediately returns a collection
of descriptions of those tasks which have started prior to this call.
|
void |
finished() |
protected void |
logQuietly(String msg) |
protected void |
logQuietly(Throwable t) |
protected Scheduler.ShutdownHandler |
newShutdownHandler() |
void |
schedule(Runnable childStatement) |
protected boolean |
shutdownThreadPoolsAwaitingKilled() |
public Scheduler(ConsoleStream logger, org.junit.runner.Description description, SchedulingStrategy strategy)
logger
- console loggerdescription
- JUnit description of classstrategy
- scheduling strategypublic Scheduler(ConsoleStream logger, org.junit.runner.Description description, SchedulingStrategy strategy, int concurrency)
Scheduler(ConsoleStream, org.junit.runner.Description, Scheduler, SchedulingStrategy)
or Scheduler(ConsoleStream, org.junit.runner.Description, Scheduler, SchedulingStrategy, int)
.logger
- current logger implementationdescription
- description of current runnerstrategy
- scheduling strategy with a shared thread poolconcurrency
- determines maximum concurrent children scheduled a time via schedule(Runnable)
NullPointerException
- if null strategypublic Scheduler(ConsoleStream logger, org.junit.runner.Description description, SchedulingStrategy strategy, Balancer balancer)
Scheduler(ConsoleStream, org.junit.runner.Description, SchedulingStrategy, int)
which was
limiting the concurrency of children of a runner where this scheduler was set, this
balancer is limiting the concurrency of all children in runners having schedulers created by this
constructor.logger
- current logger implementationdescription
- description of current runnerstrategy
- scheduling strategy which may share threads with other strategybalancer
- determines maximum concurrent children scheduled a time via schedule(Runnable)
NullPointerException
- if null strategy or balancerpublic Scheduler(ConsoleStream logger, org.junit.runner.Description description, Scheduler masterScheduler, SchedulingStrategy strategy, Balancer balancer)
logger
- current logger implementationdescription
- description of current runnermasterScheduler
- scheduler sharing own threads with this slavestrategy
- scheduling strategy for this schedulerbalancer
- determines maximum concurrent children scheduled a time via schedule(Runnable)
NullPointerException
- if null masterScheduler, strategy or balancerpublic Scheduler(ConsoleStream logger, org.junit.runner.Description description, Scheduler masterScheduler, SchedulingStrategy strategy, int concurrency)
logger
- console loggerdescription
- JUnit description of classmasterScheduler
- a reference to
Scheduler(ConsoleStream, org.junit.runner.Description, SchedulingStrategy, int)
or Scheduler(ConsoleStream, org.junit.runner.Description, SchedulingStrategy)
strategy
- scheduling strategyconcurrency
- determines maximum concurrent children scheduled a time via schedule(Runnable)
Scheduler(ConsoleStream, org.junit.runner.Description, SchedulingStrategy)
,
Scheduler(ConsoleStream, org.junit.runner.Description, SchedulingStrategy, int)
public Scheduler(ConsoleStream logger, org.junit.runner.Description description, Scheduler masterScheduler, SchedulingStrategy strategy)
ParallelComputerBuilder.useSeparatePools()
.
logger
- console loggerdescription
- JUnit description of classmasterScheduler
- parent schedulerstrategy
- scheduling strategyprotected void logQuietly(Throwable t)
protected void logQuietly(String msg)
protected ShutdownResult describeStopped(boolean stopNow)
register(Scheduler)
.
If shutdownNow is set, waiting methods will be interrupted via Thread.interrupt()
.stopNow
- if true
interrupts waiting test methodsprotected boolean shutdownThreadPoolsAwaitingKilled()
protected void beforeExecute()
protected void afterExecute()
public void schedule(Runnable childStatement)
schedule
in interface org.junit.runners.model.RunnerScheduler
public void finished()
finished
in interface org.junit.runners.model.RunnerScheduler
protected Scheduler.ShutdownHandler newShutdownHandler()
Copyright © 2004–2017 The Apache Software Foundation. All rights reserved.