我一直在尝试使用异步Linux网络套接字(aio.h / librt中的aio_read等),我试图找出的一件事是这些是否为零拷贝。到目前为止,我所阅读的几乎所有内容都讨论了文件I / O,而我感兴趣的是它的网络I / O.
AIO使用起来有点痛苦,我怀疑它是不便携的,所以想知道它是否值得坚持下去。零拷贝只是唯一的优势(albiet是我的目的的主要优势)它将超过(非阻塞)select / epoll ..
答案 0 :(得分:2)
在GLIBC中,AIO是使用POSIX线程和常规pread
调用实现的。所以它可能比select
或epoll
更贵,并且自己做read
或recv
。