Package one.nio.net
Class NativeSelector
java.lang.Object
one.nio.net.Selector
one.nio.net.NativeSelector
- All Implemented Interfaces:
Closeable,AutoCloseable,Iterable<Session>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate final intprivate final longprivate Session[]private int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidfinal voidclose()final voidfinal voidprivate static voidepollClose(int epollFD) private static intprivate static voidepollCtl(int epollFD, int op, int fd, int data, int events) private static intepollWait(int epollFD, long epollStruct, int epollElements) booleanisOpen()iterator()longfinal voidfinal voidprivate voidselect()final intsize()final voidunregister(Session session) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
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
-
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() -
isOpen
public boolean isOpen() -
close
public final void close() -
register
-
unregister
- Specified by:
unregisterin classSelector
-
enable
-
disable
-
listen
-
iterator
-
select
-
lastWakeupTime
public long lastWakeupTime()- Specified by:
lastWakeupTimein classSelector
-
add
-
remove
-