title: Netty ReadTimeoutHandler triggering multiple timeouts
body: <p>It looks like the default behavior of <code>ReadTimeoutHandler</code> is to spam <code>ReadTimeoutException</code>s upstream until the shared timer object is destroyed or the channel is destroyed. The problem is, it manages to fire off multiple <code>ReadTimeoutException</code>s before the channel closes.</p>
  
  <p>Is this to be expected or am I doing something wrong?</p>
  
  <p>What's the most Netty-idiomatic way of making it emit only one <code>ReadTimeoutException</code>? Should I just write a channel handler that only passes the first <code>ReadTimeoutException</code> it sees upstream?</p>