Package name.pachler.nio.file.impl
Class BSD
java.lang.Object
name.pachler.nio.file.impl.Unix
name.pachler.nio.file.impl.BSD
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
struct kevent { uintptr_t ident; // identifier for this event short filter; // filter for event u_short flags; // action flags for kqueue u_int fflags; // filter flag value intptr_t data; // filter data value void *udata; // opaque user data identifier };Nested classes/interfaces inherited from class name.pachler.nio.file.impl.Unix
Unix.timespec
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final short
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic int
kevent
(int kq, BSD.kevent[] changelist, BSD.kevent[] eventlist, Unix.timespec timeout) static int
kqueue()
Methods inherited from class name.pachler.nio.file.impl.Unix
getIntDefine
-
Field Details
-
EV_ADD
public static final short EV_ADD -
EV_ENABLE
public static final short EV_ENABLE -
EV_DISABLE
public static final short EV_DISABLE -
EV_DELETE
public static final short EV_DELETE -
EV_ONESHOT
public static final short EV_ONESHOT -
EV_CLEAR
public static final short EV_CLEAR -
EV_EOF
public static final short EV_EOF -
EV_ERROR
public static final short EV_ERROR -
EVFILT_VNODE
public static final short EVFILT_VNODE -
EVFILT_PROC
public static final short EVFILT_PROC -
NOTE_DELETE
public static final int NOTE_DELETE -
NOTE_WRITE
public static final int NOTE_WRITE -
NOTE_EXTEND
public static final int NOTE_EXTEND -
NOTE_ATTRIB
public static final int NOTE_ATTRIB -
NOTE_LINK
public static final int NOTE_LINK -
NOTE_RENAME
public static final int NOTE_RENAME -
NOTE_REVOKE
public static final int NOTE_REVOKE -
NOTE_EXIT
public static final int NOTE_EXIT -
NOTE_FORK
public static final int NOTE_FORK -
NOTE_EXEC
public static final int NOTE_EXEC -
NOTE_TRACK
public static final int NOTE_TRACK -
NOTE_TRACKERR
public static final int NOTE_TRACKERR
-
-
Constructor Details
-
BSD
public BSD()
-
-
Method Details
-
kqueue
public static int kqueue() -
kevent
public static int kevent(int kq, BSD.kevent[] changelist, BSD.kevent[] eventlist, Unix.timespec timeout) - Parameters:
kq
- the kqueue to read events from/change events in. Obtained with kqueue().changelist
- an array of kevent instances that indicate events to add/remove or modify. If null, no changes will be applied to the kqueue.eventlist
- an array that the function will fill with events that occurred. If there are more events available than there is space in this array, the array will be filled. A subsequent call to kevent() will yield the remaining events. Use select() on the kqueue file descriptor to check if there are events pending. Non-null array elements will be kept; their values will be overwritten. The function will assign new kqueue objects to null array elements. Note that providing an eventlist array pre-filled with kevent objects will improve performance. If null is specified, no events will be read, and the function returns immediately.timeout
- timeout value. If null, the function will wait indefinitely until events are available (unless an error occurred). Otherwise, the function will wait for the specified timeout for events (which may be zero), again, unless an error occurs. Note that the function will return immediately if eventlist is null or it's length is zero, regardless of the timeout specified.- Returns:
- the function returns the number of events written to eventlist. Zero may be returned if the timeout passed before events could be read. -1 is returned if an error occurred; call errno() to get the error code.
-