title: Difference between `deadline_timer`and `waitable_timer` in `boost asio`
body: <p>To expire a timer in 5 seconds,<br>
  is there any practical difference between these two?<br>
  Is any one preferable(performance, resource, etc.) to the other for this case?<br></p>
  
  <p>[Option 1] <strong><code>deadline_timer</code></strong>:</p>
  
  <pre><code>boost::asio::deadline_timer timer(io_service);
  timer.expires_from_now(boost::posix_time::seconds(5));
  </code></pre>
  
  <p>[Option 2] <strong><code>waitable_timer</code></strong>(<code>system_timer</code> or <code>steady_timer</code>):</p>
  
  <pre><code>boost::asio::system_timer timer(io_service);
  timer.expires_from_now(std::chrono::seconds(5));
  </code></pre>
  
  <p><em>PS: Please concentrate on comparing <code>deadline_timer</code> vs. <code>system_timer</code>, rather than <code>system_timer</code> vs. <code>steady_timer</code>.</em></p>