Class JCToolsBlockingQueueFactory<E>
java.lang.Object
org.apache.logging.log4j.core.async.JCToolsBlockingQueueFactory<E>
- All Implemented Interfaces:
BlockingQueueFactory<E>
@Plugin(name="JCToolsBlockingQueue",
category="Core",
elementType="BlockingQueueFactory")
public class JCToolsBlockingQueueFactory<E>
extends Object
implements BlockingQueueFactory<E>
Factory for creating instances of BlockingQueues backed by JCTools
MpscArrayQueue
.- Since:
- 2.7
-
Nested Class Summary
-
Field Summary
Fields inherited from interface org.apache.logging.log4j.core.async.BlockingQueueFactory
ELEMENT_TYPE
-
Method Summary
Modifier and TypeMethodDescriptioncreate
(int capacity) Creates a new BlockingQueue with the specified maximum capacity.static <E> JCToolsBlockingQueueFactory<E>
createFactory
(JCToolsBlockingQueueFactory.WaitStrategy waitStrategy)
-
Method Details
-
create
Description copied from interface:BlockingQueueFactory
Creates a new BlockingQueue with the specified maximum capacity. Note that not all implementations of BlockingQueue support a bounded capacity in which case the value is ignored.- Specified by:
create
in interfaceBlockingQueueFactory<E>
- Parameters:
capacity
- maximum size of the queue if supported- Returns:
- a new BlockingQueue
-
createFactory
@PluginFactory public static <E> JCToolsBlockingQueueFactory<E> createFactory(@PluginAttribute(value="WaitStrategy",defaultString="PARK") JCToolsBlockingQueueFactory.WaitStrategy waitStrategy)
-