三种 I/O 模型的简要说明
1.非阻塞忙轮询的I/O方式
while true {
for i in stream[]; {
if i has data
read until unavailable
}
}
2. poll / select /阻塞非忙轮询
while true {
select(streams[])
for i in streams[] {
if i has data
read until unavailable
}
}
3. epoll
while true {
active_stream[] = epoll_wait(epollfd)
for i in active_stream[] {
read or write till
}
}