|
|||||||
|
|
POLLSection: Linux Programmer's Manual (2)Updated: 7 December 1997 Index Return to Main Contents ̾Á°poll - ¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ë¤ª¤±¤ë¥¤¥Ù¥ó¥È¤òÂԤĽñ¼°#include <sys/poll.h>int poll(struct pollfd *ufds, unsigned int nfds, int timeout); ÀâÌÀpoll ¤Ï select ¤ÈƱ¤¸ÌÜŪ¤ÎÊѼï¤Ç¤¢¤ë¡£¤³¤ì¤Ï°Ê²¼¤Î·¿¤Î¹½Â¤ÂΤÎÇÛÎó¤ò ufds ¤Ë»ØÄꤹ¤ë¡£
struct pollfd {
int fd; /* file descriptor */
short events; /* requested events */
short revents; /* returned events */
};
¤½¤·¤Æ
timeout
¤Ë¥ß¥êÉäò»ØÄꤹ¤ë¡£Éé¤ÎÃͤÏ̵À©¸Â¡¢¥¿¥¤¥à¥¢¥¦¥È̵¤·¤ò°ÕÌ£¤¹¤ë¡£
¹½Â¤ÂΤÎ
fd
¤Ë¤Ï¥ª¡¼¥×¥ó¤·¤¿¥Õ¥¡¥¤¥ë¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥¿¡¼¤òÆþ¤ì¤ë¡£
¹½Â¤ÂΤÎ
events
Í×ÁÇ¤ÏÆþÎϥѥé¥á¡¼¥¿¡¼¤Ç¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬¶½Ì£¤ò»ý¤Ã¤Æ¤¤¤ë¥¤¥Ù¥ó¥È¤Î
¥Ó¥Ã¥È¥Þ¥¹¥¯¤ò»ØÄꤹ¤ë¡£
revents
Í×ÁǤϽÐÎϥѥé¥á¡¼¥¿¡¼¤Ç¥«¡¼¥Í¥ë¤Ë¤è¤Ã¤Æ¼ÂºÝ¤Ëµ¯¤Ã¤¿¥¤¥Ù¥ó¥È¤¬ÀßÄꤵ¤ì¡¢
Í׵ᤷ¤¿¥¤¥Ù¥ó¥È¤Î¤É¤ì¤«¤«¡¢
POLLERR,
POLLHUP,
POLLNVAL
¤Î¤É¤ì¤«¤È¤Ê¤ë¡£(¤³¤ì¤é»°¤Ã¤Ä¤Î¥Ó¥Ã¥È¤Ï
events
¤Ë»ØÄꤷ¤Æ¤â°ÕÌ£¤¬¤Ê¤¤¡¢Âбþ¤·¤¿¾õÂÖ¤¬¿¿¤Î¾ì¹ç¤Ë
revents
¤ËÀßÄꤵ¤ì¤ë¡£)
¤É¤Î¥Õ¥¡¥¤¥ë¡¦¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼¤Ë¤âÍ׵ᤷ¤¿¥¤¥Ù¥ó¥È¤¬È¯À¸¤·¤Æ¤ª¤é¤º¡¢
¥¨¥é¡¼¤âµ¯¤³¤é¤Ê¤¤¾ì¹ç¡¢¥«¡¼¥Í¥ë¤Ï
timeout
¥ß¥êÉäδ֡¢¤½¤ì¤é¤Î¥¤¥Ù¥ó¥È¤Î¤É¤ì¤«¤¬È¯À¸¤¹¤ë¤Î¤òÂԤġ£
°Ê²¼¤Î¥Þ¥¹¥¯¤È¤·¤Æ»ÈÍѲÄǽ¤Ê¥Ó¥Ã¥È¤Ï <sys/poll.h> ¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë:
#define POLLIN 0x0001 /* There is data to read */
#define POLLPRI 0x0002 /* There is urgent data to read */
#define POLLOUT 0x0004 /* Writing now will not block */
#define POLLERR 0x0008 /* Error condition */
#define POLLHUP 0x0010 /* Hung up */
#define POLLNVAL 0x0020 /* Invalid request: fd not open */
<asm/poll.h> ¤Ë¤Ï
POLLRDNORM,
POLLRDBAND,
POLLWRNORM,
POLLWRBAND
POLLMSG
¤Ê¤É¤ÎÃͤâÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£
ÊÖ¤êÃÍÀ®¸ù¤·¤¿¾ì¹ç¤ÏÀµ¤Î¿ô¤òÊÖ¤¹¡¢¤³¤Î¿ô¤Ï¥¼¥í°Ê³°¤Î revents Í×ÁǤò»ý¤Ä¹½Â¤ÂΤοô¤Ç¤¢¤ë¡¢(Ê̤θÀ¤¤Êý¤ò¤¹¤ë¤È¡¢¤³¤ì¤é¤Î¥Ç¥£¥¹¥¯¥ê¥×¥¿¡¼ ¤Ë¤Ï¥¤¥Ù¥ó¥È¤«¥¨¥é¡¼Êó¹ð¤¬¤¢¤ë¡£) ¥¨¥é¡¼¤Î¾ì¹ç¤Ï -1 ¤¬ÊÖ¤µ¤ì¡¢ errno ¤¬Å¬ÀÚ¤ËÀßÄꤵ¤ì¤ë¡£¥¨¥é¡¼
½àµòXPG4-UNIX.ÍÍÑÀpoll() ¥·¥¹¥Æ¥à¥³¡¼¥ë Linux 2.1.23 ¤ÇƳÆþ¤µ¤ì¤¿¡£ poll() ¥é¥¤¥Ö¥é¥ê¡¦¥³¡¼¥ë¤Ï libc 5.4.28 ¤«¤éƳÆþ¤µ¤ì¤¿ (¤³¤ì¤Ï¥«¡¼¥Í¥ë¤¬ poll ¥·¥¹¥Æ¥à¥³¡¼¥ë¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¾ì¹ç¤Ë select ¤ò»ÈÍѤ·¤Æ¥¨¥ß¥å¥ì¡¼¥È¤ò¹Ô¤¦)¡£´ØÏ¢¹àÌÜselect(2)
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man2". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |