Package one.nio.net

Class NativeSelector

java.lang.Object
one.nio.net.Selector
one.nio.net.NativeSelector
All Implemented Interfaces:
Closeable, AutoCloseable, Iterable<Session>

final class NativeSelector extends Selector
  • Field Details

    • EPOLL_CTL_ADD

      private static final int EPOLL_CTL_ADD
      See Also:
    • EPOLL_CTL_DEL

      private static final int EPOLL_CTL_DEL
      See Also:
    • EPOLL_CTL_MOD

      private static final int EPOLL_CTL_MOD
      See Also:
    • EPOLL_HEADER_SIZE

      private static final int EPOLL_HEADER_SIZE
      See Also:
    • EPOLL_MAX_EVENTS

      private static final int EPOLL_MAX_EVENTS
      See Also:
    • EPOLL_STRUCT_SIZE

      private static final int EPOLL_STRUCT_SIZE
      See Also:
    • EPOLL_BUF_SIZE

      private static final int EPOLL_BUF_SIZE
      See Also:
    • epollFD

      private final int epollFD
    • epollStruct

      private final long epollStruct
    • sessions

      private Session[] sessions
    • size

      private int size
    • closeFlag

      private volatile int closeFlag
  • Constructor Details

    • NativeSelector

      NativeSelector()
  • Method Details

    • epollCreate

      private static int epollCreate()
    • epollClose

      private static void epollClose(int epollFD)
    • epollWait

      private static int epollWait(int epollFD, long epollStruct, int epollElements)
    • epollCtl

      private static void epollCtl(int epollFD, int op, int fd, int data, int events)
    • size

      public final int size()
      Specified by:
      size in class Selector
    • isOpen

      public boolean isOpen()
      Specified by:
      isOpen in class Selector
    • close

      public final void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in class Selector
    • register

      public final void register(Session session)
      Specified by:
      register in class Selector
    • unregister

      public final void unregister(Session session)
      Specified by:
      unregister in class Selector
    • enable

      public final void enable(Session session)
      Specified by:
      enable in class Selector
    • disable

      public final void disable(Session session)
      Specified by:
      disable in class Selector
    • listen

      public final void listen(Session session, int events)
      Specified by:
      listen in class Selector
    • iterator

      public final Iterator<Session> iterator()
      Specified by:
      iterator in interface Iterable<Session>
      Specified by:
      iterator in class Selector
    • select

      public final Iterator<Session> select()
      Specified by:
      select in class Selector
    • lastWakeupTime

      public long lastWakeupTime()
      Specified by:
      lastWakeupTime in class Selector
    • add

      private void add(Session session)
    • remove

      private void remove(Session session)