Class AbstractNioWorkerPool<E extends org.jboss.netty.channel.socket.nio.AbstractNioWorker>
- java.lang.Object
-
- org.jboss.netty.channel.socket.nio.AbstractNioWorkerPool<E>
-
- All Implemented Interfaces:
NioSelectorPool
,WorkerPool<E>
,ExternalResourceReleasable
- Direct Known Subclasses:
NioDatagramWorkerPool
,NioWorkerPool
public abstract class AbstractNioWorkerPool<E extends org.jboss.netty.channel.socket.nio.AbstractNioWorker> extends Object implements WorkerPool<E>, ExternalResourceReleasable
Abstract base class forWorkerPool
implementations that create theWorker
's up-front and return them in a "fair" fashion when callingnextWorker()
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
init()
protected abstract E
newWorker(Executor executor)
E
nextWorker()
Return the nextWorker
to usevoid
rebuildSelectors()
void
releaseExternalResources()
Releases the external resources that this object depends on.void
shutdown()
Shutdown theNioSelectorPool
and all internal created resources
-
-
-
Method Detail
-
init
protected void init()
-
nextWorker
public E nextWorker()
Description copied from interface:WorkerPool
Return the nextWorker
to use- Specified by:
nextWorker
in interfaceWorkerPool<E extends org.jboss.netty.channel.socket.nio.AbstractNioWorker>
- Returns:
- worker
-
rebuildSelectors
public void rebuildSelectors()
Description copied from interface:NioSelectorPool
Replaces the currentSelector
s of theBoss
es with newSelector
s to work around the infamous epoll 100% CPU bug.- Specified by:
rebuildSelectors
in interfaceNioSelectorPool
-
releaseExternalResources
public void releaseExternalResources()
Description copied from interface:ExternalResourceReleasable
Releases the external resources that this object depends on. You should not call this method if the external resources (e.g. thread pool) are in use by other objects.- Specified by:
releaseExternalResources
in interfaceExternalResourceReleasable
-
shutdown
public void shutdown()
Description copied from interface:NioSelectorPool
Shutdown theNioSelectorPool
and all internal created resources- Specified by:
shutdown
in interfaceNioSelectorPool
-
-