Class ForkNumberBucket
java.lang.Object
org.apache.maven.plugin.surefire.booterclient.ForkNumberBucket
A bucket from which fork numbers can be drawn. Any drawn number needs to be returned to the bucket, in order to keep
the range of provided values delivered as small as possible.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AtomicInteger
private static final ForkNumberBucket
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic int
private int
private int
private static ForkNumberBucket
static void
returnNumber
(int number) private void
returnNumberInternal
(int number)
-
Field Details
-
INSTANCE
-
qFree
-
highWaterMark
-
-
Constructor Details
-
ForkNumberBucket
private ForkNumberBucket()Non-public constructor
-
-
Method Details
-
drawNumber
public static int drawNumber()- Returns:
- a fork number that is not currently in use. The value must be returned to the bucket using
returnNumber(int)
.
-
returnNumber
public static void returnNumber(int number) - Parameters:
number
- the number to return to the bucket so that it can be reused.
-
getInstance
- Returns:
- a singleton instance
-
drawNumberInternal
private int drawNumberInternal()- Returns:
- a fork number that is not currently in use. The value must be returned to the bucket using
returnNumber(int)
.
-
getHighestDrawnNumber
private int getHighestDrawnNumber()- Returns:
- the highest number that has been drawn
-
returnNumberInternal
private void returnNumberInternal(int number) - Parameters:
number
- the number to return to the bucket so that it can be reused.
-