Package io.netty.channel.epoll
Class EpollIoHandler
- java.lang.Object
-
- io.netty.channel.epoll.EpollIoHandler
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
closeFileDescriptors()
This method is intended for use by process checkpoint/restore integration, such as OpenJDK CRaC.void
destroy()
Destroy theIoHandler
and free all its resources.boolean
isCompatible(java.lang.Class<? extends IoHandle> handleType)
Returnstrue
if the given type is compatible with thisIoHandler
and so can be registered,false
otherwise.static IoHandlerFactory
newFactory()
Returns a newIoHandlerFactory
that createsEpollIoHandler
instances.static IoHandlerFactory
newFactory(int maxEvents, SelectStrategyFactory selectStrategyFactory)
Returns a newIoHandlerFactory
that createsEpollIoHandler
instances.void
openFileDescriptors()
This method is intended for use by a process checkpoint/restore integration, such as OpenJDK CRaC.void
prepareToDestroy()
Prepare to destroy thisIoHandler
.IoRegistration
register(IoHandle handle)
Register aIoHandle
for IO.int
run(IoHandlerContext context)
Run the IO handled by thisIoHandler
.void
wakeup()
Wakeup theIoHandler
, which means if any operation blocks it should be unblocked and return as soon as possible.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.netty.channel.IoHandler
initialize
-
-
-
-
Method Detail
-
newFactory
public static IoHandlerFactory newFactory()
Returns a newIoHandlerFactory
that createsEpollIoHandler
instances.
-
newFactory
public static IoHandlerFactory newFactory(int maxEvents, SelectStrategyFactory selectStrategyFactory)
Returns a newIoHandlerFactory
that createsEpollIoHandler
instances.
-
openFileDescriptors
@UnstableApi public void openFileDescriptors()
This method is intended for use by a process checkpoint/restore integration, such as OpenJDK CRaC.
-
wakeup
public void wakeup()
Description copied from interface:IoHandler
Wakeup theIoHandler
, which means if any operation blocks it should be unblocked and return as soon as possible.
-
prepareToDestroy
public void prepareToDestroy()
Description copied from interface:IoHandler
Prepare to destroy thisIoHandler
. This method will be called beforeIoHandler.destroy()
and may be called multiple times.- Specified by:
prepareToDestroy
in interfaceIoHandler
-
destroy
public void destroy()
Description copied from interface:IoHandler
-
register
public IoRegistration register(IoHandle handle) throws java.lang.Exception
Description copied from interface:IoHandler
Register aIoHandle
for IO.
-
isCompatible
public boolean isCompatible(java.lang.Class<? extends IoHandle> handleType)
Description copied from interface:IoHandler
Returnstrue
if the given type is compatible with thisIoHandler
and so can be registered,false
otherwise.- Specified by:
isCompatible
in interfaceIoHandler
- Parameters:
handleType
- the type of theIoHandle
.- Returns:
- if compatible of not.
-
run
public int run(IoHandlerContext context)
Description copied from interface:IoHandler
Run the IO handled by thisIoHandler
. TheIoHandlerContext
should be used to ensure we not execute too long and so block the processing of other task that are scheduled on theThreadAwareExecutor
. This is done by takingIoHandlerContext.delayNanos(long)
orIoHandlerContext.deadlineNanos()
into account.- Specified by:
run
in interfaceIoHandler
- Parameters:
context
- theIoHandlerContext
.- Returns:
- the number of
IoHandle
for which I/O was handled.
-
closeFileDescriptors
@UnstableApi public void closeFileDescriptors()
This method is intended for use by process checkpoint/restore integration, such as OpenJDK CRaC. It's up to the caller to ensure that there is no concurrent use of the FDs while these are closed, e.g. by blocking the executor.
-
-