Minidx Support Forum


 
Subject: ソケットのselect()
dingzhigang
Administrator
Rank: 9Rank: 9Rank: 9



UID 2
Digest Posts 0
Credits 40
Posts 75
Reading Access 200
Registered 27-3-2007
Status Offline
Post at 14-6-2007 08:40  Profile | Blog | P.M. 
ソケットのselect()

selectは読み込み、書き込みの両方を同時に待機できるよ。
readfdsとwritefdsの両方にfd_setを指定すれば、
読み込み可能になるか、書き込み可能になったら復帰する。

int status;
do {
 fd_set rdfds;
 fd_set wrfds;
 FD_ZERO(&rdfds);
 FD_ZERO(&wrfds);
 FD_SET(fd, &rdfds);
 FD_SET(fd, &wrfds);
 status = select(fd + 1, &rdfds, &wrfds, null, null);
} while (status < 0 && errno == EINTR);

if (FD_ISSET(fd, &rdfds)) {
 /* 読み込み可能 */
}

if (FD_ISSET(fd, &wrfds)) {
 /* 書き込み可能 */
}
Top
[Adv.]
 


All times are GMT+8, the time now is 2-12-2008 07:23


Processed in 0.373034 second(s), 7 queries , Gzip enabled

Clear Cookies - Contact Us - Minidx Inc - Archiver - WAP