home | help
std::shared...hared_until(3)   C++ Standard Libary  std::shared...hared_until(3)

NAME
     std::shared_timed_mutex::try_lock_shared_until    -   std::shared_timed_mu-
     tex::try_lock_shared_until

Synopsis
	template< class Clock, class Duration >
	bool			try_lock_shared_until(			   const
     (since C++14)
	std::chrono::time_point<Clock,Duration>& timeout_time );

	Tries  to  lock  the  mutex in shared mode. Blocks until specified time-
     out_time has been
	reached or the lock is acquired, whichever comes  first.  On  successful
     lock
	acquisition returns true, otherwise returns false.

	If   timeout_time   has  already  passed,  this  function  behaves  like
     try_lock_shared().

	Clock must meet the Clock requirements.
	The program is ill-formed if std::chrono::is_clock_v<Clock> is false.
	(since C++20)

	The standard recommends that the clock tied to timeout_time be used,  in
     which case
	adjustments  of  the clock may be taken into account. Thus, the duration
     of the block
	might be more or less than timeout_time - Clock::now() at  the	time  of
     the call,
	depending  on  the direction of the adjustment and whether it is honored
     by the
	implementation. The function also may block until after timeout_time has
     been
	reached due to process scheduling or resource contention delays.

	As with try_lock_shared(), this function is allowed to	fail  spuriously
     and return
	false even if the mutex was not locked by any other thread at some point
     before
	timeout_time.

	Prior unlock() operation on the same mutex synchronizes-with (as defined
     in
	std::memory_order) this operation if it returns true.

	If try_lock_shared_until is called by a thread that already owns the mu-
     tex in any
	mode (shared or exclusive), the behavior is undefined.

Parameters
	timeout_time - maximum time point to block until

Return value
	true  if  the shared lock ownership was acquired successfully, otherwise
     false.

Exceptions
	Any exception thrown by clock, time_point, or duration during the execu-
     tion (clocks,
	time points, and  durations  provided  by  the	standard  library  never
     throw).

Example
	 This section is incomplete
	 Reason: no example

See also
			    tries  to  lock  the mutex, returns if the mutex has
     been
	try_lock_until	    unavailable until  specified  time	point  has  been
     reached
			    (public member function)
			    tries  to  lock  the mutex for shared ownership, re-
     turns if the
	try_lock_shared     mutex is not available
			    (public member function)
			    tries to lock the mutex for  shared  ownership,  re-
     turns if the
	try_lock_shared_for mutex has been
			    unavailable for the specified timeout duration
			    (public member function)

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10	    std::shared...hared_until(3)

home | help