public class Scheduler extends Object implements org.junit.runners.model.RunnerScheduler
ParentRunner.setScheduler(org.junit.runners.model.RunnerScheduler)
.
A new instance of scheduling strategy should be passed to the constructor of this scheduler.Modifier and Type | Class and Description |
---|---|
class |
Scheduler.ShutdownHandler |
Constructor and Description |
---|
Scheduler(Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy)
Should be used with individual pools on suites, classes and methods, see
ParallelComputerBuilder.useSeparatePools() . |
Scheduler(Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy,
Balancer balancer)
Can be used by e.g.
|
Scheduler(Description description,
Scheduler masterScheduler,
SchedulingStrategy strategy,
int concurrency) |
Scheduler(Description description,
SchedulingStrategy strategy)
Use e.g.
|
Scheduler(Description description,
SchedulingStrategy strategy,
Balancer balancer)
New instances should be used by schedulers with limited concurrency by balancer
against other groups of schedulers.
|
Scheduler(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() |
void |
finished() |
protected void |
logQuietly(String msg) |
protected void |
logQuietly(Throwable t) |
protected Scheduler.ShutdownHandler |
newShutdownHandler() |
void |
schedule(Runnable childStatement) |
Collection<Description> |
shutdown(boolean shutdownNow)
Attempts to stop all actively executing tasks and immediately returns a collection
of descriptions of those tasks which have started prior to this call.
|
public Scheduler(Description description, SchedulingStrategy strategy)
public Scheduler(Description description, SchedulingStrategy strategy, int concurrency)
Scheduler(org.junit.runner.Description, Scheduler, SchedulingStrategy)
or Scheduler(org.junit.runner.Description, Scheduler, SchedulingStrategy, int)
.description
- 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(Description description, SchedulingStrategy strategy, Balancer balancer)
Scheduler(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.description
- 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(Description description, Scheduler masterScheduler, SchedulingStrategy strategy, Balancer balancer)
description
- 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(Description description, Scheduler masterScheduler, SchedulingStrategy strategy, int concurrency)
masterScheduler
- a reference to Scheduler(org.junit.runner.Description, SchedulingStrategy, int)
or Scheduler(org.junit.runner.Description, SchedulingStrategy)
Scheduler(org.junit.runner.Description, SchedulingStrategy)
,
Scheduler(org.junit.runner.Description, SchedulingStrategy, int)
public Scheduler(Description description, Scheduler masterScheduler, SchedulingStrategy strategy)
ParallelComputerBuilder.useSeparatePools()
.
Cached thread pool is infinite and can be always shared.protected void logQuietly(Throwable t)
protected void logQuietly(String msg)
public Collection<Description> shutdown(boolean shutdownNow)
register(Scheduler)
.
If shutdownNow is set, waiting methods will be interrupted via Thread.interrupt()
.shutdownNow
- if true interrupts waiting methodsprotected 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–2014 The Apache Software Foundation. All rights reserved.