11.01.2015 Views

I/O Multiplexing: select and poll

I/O Multiplexing: select and poll

I/O Multiplexing: select and poll

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Rewrite Concurrent TCP Echo Server<br />

with <strong>poll</strong><br />

Initialization<br />

tcpcliserv/tcpserv<strong>poll</strong>01.c<br />

#include "unp.h"<br />

#include /* for OPEN_MAX */<br />

int main(int argc, char **argv)<br />

{<br />

int<br />

i, maxi, listenfd, connfd, sockfd;<br />

int<br />

nready;<br />

ssize_t n;<br />

char<br />

line[MAXLINE];<br />

結 構 陣 列<br />

socklen_t clilen;<br />

struct <strong>poll</strong>fd client[OPEN_MAX];<br />

struct sockaddr_in cliaddr, servaddr;<br />

listenfd = Socket(AF_INET, SOCK_STREAM, 0);<br />

bzero(&servaddr, sizeof(servaddr));<br />

servaddr.sin_family = AF_INET;<br />

servaddr.sin_addr.s_addr = htonl(INADDR_ANY);<br />

servaddr.sin_port = htons(SERV_PORT);<br />

40

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!