std::timed_mutex::try_lock_for
From cppreference.com
                    
                                        
                    < cpp | thread | timed mutex
                    
                                                            
                    
|   template< class Rep, class Period > 
bool try_lock_for( const std::chrono::duration<Rep,Period>& timeout_duration );  | 
(since C++11) | |
Tries to lock the mutex. Blocks until specified timeout_duration has elapsed or the lock is acquired, whichever comes first. On successful lock acquisition returns true, otherwise returns false. 
A steady clock is used to measure the duration. This function may block for longer than timeout_duration due to scheduling or resource contention delays. 
The behavior is undefined if the mutex is not unlocked before being destroyed, i.e. some thread still owns it.
Contents | 
[edit] Parameters
| timeout_duration | - | maximum duration to block for | 
[edit] Return value
true if the lock was acquired successfully, otherwise false.
[edit] Exceptions
(none)
[edit] Example
| This section is incomplete Reason: no example  | 
[edit] See also
|    locks the mutex, blocks if the mutex is not available  (public member function)  | 
|
|    tries to lock the mutex, returns if the mutex is not available  (public member function)  | 
|
|    tries to lock the mutex, returns if the mutex has been unavailable until specified time point has been reached (public member function)  | 
|
|    unlocks the mutex  (public member function)  | 
|