pollin | pollpri等价于select()的读事件,pollout |pollwrband等价于select()的写事件。pollin等价于pollrdnorm |pollrdband,而pollout则等价于pollwrnorm。例如,要同时监视一个文件描述符是否可读和可写,我们可以设置 events为pollin |pollout。在poll返回时,我们可以检查revents中的标志,对应于文件描述符请求的events结构体。如果pollin事件被设置,则文件描述符可以被读取而不阻塞。如果pollout被设置,则文件描述符可以写入而不导致阻塞。这些标志并不是互斥的:它们可能被同时设置,表示这个文件描述符的读取和写入操作都会正常返回而不阻塞。














发表评论