1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
.\"
.\" epoll by Davide Libenzi ( efficient event notification retrieval )
.\" Copyright (C) 2003 Davide Libenzi
.\"
.\" This program is free software; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published by
.\" the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.
.\"
.\" This program is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with this program; if not, write to the Free Software
.\" Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
.\"
.\" Davide Libenzi <davidel@xmailserver.org>
.\"
.\"
.\" Japanese Version Copyright (c) 2004 Yuichi SATO
.\" all rights reserved.
.\" Translated Wed Jun 16 03:05:40 JST 2004
.\" by Yuichi SATO <ysato444@yahoo.co.jp>
.\"
.TH EPOLL_WAIT 2 "23 October 2002" Linux "Linux Programmer's Manual"
.SH ̾
epoll_wait \- epoll եǥץ I/O ٥ȤԤ
.SH
.B #include <sys/epoll.h>
.sp
.BR "int epoll_wait(int " epfd ", struct epoll_event * " events ", int " maxevents ", int " timeout)
.SH
.B epoll
եǥץ
.I epfd
Υ٥Ȥ
.I timeout
ߥԤġ
.I events
ؤΰˤϡƤӽФ¦Ѳǽʥ٥ȤǼ롣
.I maxevents
ĤΥ٥Ȥ
.BR epoll_wait (2)
ˤä֤롣
.I maxevents
0 礭ʤФʤʤ
.I timeout
\-1 ˻ꤹȡ
.BR epoll_wait (2)
̵¤Ԥġ
ޤ
.I timeout
0 ˻ꤹȡ
.BR epoll_wait (2)
ϥ٥ȤѲǽǤʤƤ⡢֤ (֤ͥɤ 0 Ǥ)
.B struct epoll_event
ϰʲΤ褦:
.sp
.nf
typedef union epoll_data {
void *ptr;
int fd;
__uint32_t u32;
__uint64_t u64;
} epoll_data_t;
struct epoll_event {
__uint32_t events; /* epoll ٥ */
epoll_data_t data; /* 桼ǡѿ */
};
.fi
֤빽¤Τ
.I data
Фϡ桼
.BR epoll_ctl (2)
.IR ( EPOLL_CTL_ADD , EPOLL_CTL_MOD )
ǻꤷǡǼ롣
.I events
Фˤ֤줿Ѳǽʥ٥ȤΥӥåȥեɤǼ롣
.SH ֤
硢
.BR epoll_wait (2)
ᤵ줿 I/O ФƽǤƤեǥץο֤
ޤᤵ줿
.I timeout
ߥäδ֤˥եǥץǤʤϡ0 ֤
顼ä硢
.BR epoll_wait (2)
\-1 ֤
.I errno
Ŭڤꤵ롣
.SH 顼
.TP
.B EBADF
.I epfd
ͭʥեǥץǤʤ
.TP
.B EFAULT
.I events
ǻؤΰ褬߸¤ǥǤʤ
.TP
.B EINVAL
Ϳ줿եǥץ
.I epfd
.B epoll
եǥץǤʤ
ޤ
.I maxevents
0 ʲǤ롣
.SH
.BR epoll_wait (2)
Linux ͥ 2.5.44 Ƴ줿 API Ǥ롣
ե Linux ͥ 2.5.66 dzꤵ٤Ǥ롣
.SH Ϣ
.BR epoll_create (2),
.BR epoll_ctl (2),
.BR epoll (4)
|