title: Why does epoll_wait only provide huge 1ms timeout?
body: <p>epoll_wait, select and poll functions all provide a timeout.  However with epoll, it's at a  large resolution of 1ms.  Select &amp; ppoll are the only one providing sub-millisecond timeout.</p>
  
  <p>That would mean doing other things at 1ms intervals at best.  I could do a lot of other things within 1ms on a modern CPU.</p>
  
  <p>So to do other things more often than 1ms I actually have to provide a timeout of zero (essentially disabling it).  And I'd probably add my own usleep somewhere in the main loop to stop it chewing up too much CPU.</p>
  
  <p>So the question is, why is the timeout in milli's when I would think clearly there is a case for a higher resolution timeout.</p>