libgo
libgo copied to clipboard
kqueue edge-trigger
上次说到kqueue上用level-trigger,如果是一直将fd保留在kqueue的话,可能会遇到event触发但不能处理的情况。比如,fd0可读,但这时正陷入fd1写等待,kevent会一直因fd0 read ready返回。
上次是说模拟了edge-trigger的行为,没有看到对应的代码。
不过看文档kevent也是支持edge-trigger的,应该就是 EV_CLEAR,不知道为何没用?