title: boost asio async_read_some timeout
body: <p>I use this code using <code>async_read_some</code> with timeout</p>
  
  <pre><code>        readdata=0;
          port_-&gt;async_read_some(boost::asio::buffer(vector),
                  boost::bind(readCallback));
  
  
          //init async timer
          boost::asio::deadline_timer timer(io);
          timer.async_wait(boost::bind(timeoutHandler));
          timer.expires_from_now(boost::posix_time::seconds(5));
  
          io.reset();
          do {
              io.run_one();
          }
          while (readdata==0);
  </code></pre>
  
  <p>here are my callbacks</p>
  
  <pre><code>void readCallback()
  {
      std::cout &lt;&lt; "READ CALLBACK: "&lt;&lt;x&lt;&lt;std::endl;
      readdata=1;
      return;
  }
  void timeoutHandler()
  {
     std::cout &lt;&lt; "TIMEOUT CALLBACK: "&lt;&lt;x&lt;&lt;std::endl;
     readdata=1;
  }
  </code></pre>
  
  <p>my Problem is that timeoutHandler is is executed instantly and not after 5 seconds</p>