public final class Poller extends PollerBase implements java.lang.Runnable
Modifier and Type | Class and Description |
---|---|
static class |
Poller.Handle |
Modifier and Type | Field and Description |
---|---|
private Ctx |
ctx |
private java.lang.Thread.UncaughtExceptionHandler |
exnotification |
private java.util.Set<Poller.Handle> |
fdTable |
private boolean |
retired |
private java.nio.channels.Selector |
selector |
private java.util.concurrent.CountDownLatch |
stopped |
private java.util.concurrent.atomic.AtomicBoolean |
stopping |
worker
Modifier and Type | Method and Description |
---|---|
Poller.Handle |
addHandle(java.nio.channels.SelectableChannel fd,
IPollEvents events) |
void |
destroy() |
private int |
maybeRebuildSelector(int returnsImmediately,
long timeout,
long start) |
private void |
rebuildSelector() |
private void |
register(Poller.Handle handle,
int ops,
boolean add) |
void |
removeHandle(Poller.Handle handle) |
void |
resetPollIn(Poller.Handle handle) |
void |
resetPollOut(Poller.Handle handle) |
void |
run() |
void |
setPollAccept(Poller.Handle handle) |
void |
setPollConnect(Poller.Handle handle) |
void |
setPollIn(Poller.Handle handle) |
void |
setPollOut(Poller.Handle handle) |
void |
start() |
void |
stop() |
addTimer, adjustLoad, cancelTimer, clock, createWorker, executeTimers, getLoad, isEmpty
private final Ctx ctx
private final java.util.Set<Poller.Handle> fdTable
private boolean retired
private final java.util.concurrent.atomic.AtomicBoolean stopping
private final java.util.concurrent.CountDownLatch stopped
private final java.lang.Thread.UncaughtExceptionHandler exnotification
private java.nio.channels.Selector selector
public Poller(Ctx ctx, java.lang.String name)
public void destroy()
public Poller.Handle addHandle(java.nio.channels.SelectableChannel fd, IPollEvents events)
public void removeHandle(Poller.Handle handle)
public void setPollIn(Poller.Handle handle)
public void resetPollIn(Poller.Handle handle)
public void setPollOut(Poller.Handle handle)
public void resetPollOut(Poller.Handle handle)
public void setPollConnect(Poller.Handle handle)
public void setPollAccept(Poller.Handle handle)
private void register(Poller.Handle handle, int ops, boolean add)
public void start()
public void stop()
public void run()
run
in interface java.lang.Runnable
private int maybeRebuildSelector(int returnsImmediately, long timeout, long start)
private void rebuildSelector()