title: Why timed lock doesn't throw a timeout exception in C++0x?
body: <p>C++0x allows to lock on a mutex until a given time is reached, and return a boolean stating if the mutex has been locked or not.</p>
  
  <pre><code>template &lt;class Clock, class Duration&gt;
  bool try_lock_until(const chrono::time_point&lt;Clock, 
                      Duration&gt;&amp; abs_time);
  </code></pre>
  
  <p>In some contexts, I consider an exceptional situation that the locking fails because of timeout. In this case an exception should be more appropriated. </p>
  
  <p>To make the difference a function lock_until could be used to get a timeout exception when the time is reached before locking.</p>
  
  <pre><code>template &lt;class Clock, class Duration&gt;
  void lock_until(const chrono::time_point&lt;Clock, 
                  Duration&gt;&amp; abs_time);
  </code></pre>
  
  <p>Do you think that lock_until should be more adequate in some contexts? if yes, on which ones? If no, why try_lock_until will always be a better choice?</p>