Package io.netty.channel.kqueue
Class KQueueEventLoopGroup
- java.lang.Object
-
- io.netty.util.concurrent.AbstractEventExecutorGroup
-
- io.netty.util.concurrent.MultithreadEventExecutorGroup
-
- io.netty.channel.MultithreadEventLoopGroup
-
- io.netty.channel.kqueue.KQueueEventLoopGroup
-
- All Implemented Interfaces:
EventLoopGroup
,EventExecutorGroup
,Iterable<EventExecutor>
,Executor
,ExecutorService
,ScheduledExecutorService
@UnstableApi public final class KQueueEventLoopGroup extends MultithreadEventLoopGroup
-
-
Constructor Summary
Constructors Constructor Description KQueueEventLoopGroup()
Create a new instance using the default number of threads and the defaultThreadFactory
.KQueueEventLoopGroup(int nThreads)
Create a new instance using the specified number of threads and the defaultThreadFactory
.KQueueEventLoopGroup(int nThreads, SelectStrategyFactory selectStrategyFactory)
Create a new instance using the specified number of threads and the defaultThreadFactory
.KQueueEventLoopGroup(int nThreads, Executor executor)
KQueueEventLoopGroup(int nThreads, Executor executor, SelectStrategyFactory selectStrategyFactory)
KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory)
KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler)
KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory queueFactory)
KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory taskQueueFactory, EventLoopTaskQueueFactory tailTaskQueueFactory)
KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory)
Create a new instance using the specified number of threads and the givenThreadFactory
.KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, int maxEventsAtOnce)
Deprecated.KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, int maxEventsAtOnce, SelectStrategyFactory selectStrategyFactory)
KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, SelectStrategyFactory selectStrategyFactory)
Create a new instance using the specified number of threads and the givenThreadFactory
.KQueueEventLoopGroup(ThreadFactory threadFactory)
Create a new instance using the default number of threads and the givenThreadFactory
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected EventLoop
newChild(Executor executor, Object... args)
Create a new EventExecutor which will later then accessible via theMultithreadEventExecutorGroup.next()
method.void
setIoRatio(int ioRatio)
Sets the percentage of the desired amount of time spent for I/O in the child event loops.-
Methods inherited from class io.netty.channel.MultithreadEventLoopGroup
newDefaultThreadFactory, next, register, register, register
-
Methods inherited from class io.netty.util.concurrent.MultithreadEventExecutorGroup
awaitTermination, executorCount, isShutdown, isShuttingDown, isTerminated, iterator, shutdown, shutdownGracefully, terminationFuture
-
Methods inherited from class io.netty.util.concurrent.AbstractEventExecutorGroup
execute, invokeAll, invokeAll, invokeAny, invokeAny, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdownGracefully, shutdownNow, submit, submit, submit
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.netty.util.concurrent.EventExecutorGroup
isShuttingDown, iterator, schedule, schedule, scheduleAtFixedRate, scheduleWithFixedDelay, shutdown, shutdownGracefully, shutdownGracefully, shutdownNow, submit, submit, submit, terminationFuture
-
Methods inherited from interface java.util.concurrent.ExecutorService
awaitTermination, invokeAll, invokeAll, invokeAny, invokeAny, isShutdown, isTerminated
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
KQueueEventLoopGroup
public KQueueEventLoopGroup()
Create a new instance using the default number of threads and the defaultThreadFactory
.
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads)
Create a new instance using the specified number of threads and the defaultThreadFactory
.
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(ThreadFactory threadFactory)
Create a new instance using the default number of threads and the givenThreadFactory
.
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, SelectStrategyFactory selectStrategyFactory)
Create a new instance using the specified number of threads and the defaultThreadFactory
.
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory)
Create a new instance using the specified number of threads and the givenThreadFactory
.
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor)
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, SelectStrategyFactory selectStrategyFactory)
Create a new instance using the specified number of threads and the givenThreadFactory
.
-
KQueueEventLoopGroup
@Deprecated public KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, int maxEventsAtOnce)
Deprecated.Create a new instance using the specified number of threads, the givenThreadFactory
and the given maximal amount of epoll events to handle per epollWait(...).
-
KQueueEventLoopGroup
@Deprecated public KQueueEventLoopGroup(int nThreads, ThreadFactory threadFactory, int maxEventsAtOnce, SelectStrategyFactory selectStrategyFactory)
Deprecated.Create a new instance using the specified number of threads, the givenThreadFactory
and the given maximal amount of epoll events to handle per epollWait(...).
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor, SelectStrategyFactory selectStrategyFactory)
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory)
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler)
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory queueFactory)
-
KQueueEventLoopGroup
public KQueueEventLoopGroup(int nThreads, Executor executor, EventExecutorChooserFactory chooserFactory, SelectStrategyFactory selectStrategyFactory, RejectedExecutionHandler rejectedExecutionHandler, EventLoopTaskQueueFactory taskQueueFactory, EventLoopTaskQueueFactory tailTaskQueueFactory)
- Parameters:
nThreads
- the number of threads that will be used by this instance.executor
- the Executor to use, ornull
if default one should be used.chooserFactory
- theEventExecutorChooserFactory
to use.selectStrategyFactory
- theSelectStrategyFactory
to use.rejectedExecutionHandler
- theRejectedExecutionHandler
to use.taskQueueFactory
- theEventLoopTaskQueueFactory
to use forSingleThreadEventExecutor.execute(Runnable)
, ornull
if default one should be used.tailTaskQueueFactory
- theEventLoopTaskQueueFactory
to use forSingleThreadEventLoop.executeAfterEventLoopIteration(Runnable)
, ornull
if default one should be used.
-
-
Method Detail
-
setIoRatio
public void setIoRatio(int ioRatio)
Sets the percentage of the desired amount of time spent for I/O in the child event loops. The default value is50
, which means the event loop will try to spend the same amount of time for I/O as for non-I/O tasks.
-
newChild
protected EventLoop newChild(Executor executor, Object... args) throws Exception
Description copied from class:MultithreadEventExecutorGroup
Create a new EventExecutor which will later then accessible via theMultithreadEventExecutorGroup.next()
method. This method will be called for each thread that will serve thisMultithreadEventExecutorGroup
.- Specified by:
newChild
in classMultithreadEventLoopGroup
- Throws:
Exception
-
-