Erik, > Also note the pipe busy reading lowers latency. It should be possible > to do the same with poll/select/epoll. Just to be sure - Do you mean that busy looping with poll: while (!nevents) nevents = poll (fds, timeout=0); has better latency than blocking poll: nevents = poll (fds, timeout=INFINITE) Martin