Block until this semaphore can be acquired or absTime expires.

Synopsis

Declared in <bslmt_fastpostsemaphore.h>

int
timedWait(bsls::TimeInterval const& absTime);

Description

If this semaphore is initially disabled, or becomes disabled while blocking, return e_DISABLED with no effect on the count. Otherwise, block until the count of this semaphore is a positive value or the specified absTime timeout expires. If the count of this semaphore is a positive value, return 0 and atomically decrement the count. If the absTime timeout expires, return e_TIMED_OUT with no effect on the count. Return e_FAILED if an error occurs. Errors are unrecoverable. After an error, the semaphore may be destroyed, but any other use has undefined behavior. absTime is an absolute time represented as an interval from some epoch, which is determined by the clock indicated at construction (see {Supported Clock‐Types} in the component documentation).

Return Value

0 on success, e_DISABLED if disabled, e_TIMED_OUT on timeout, or e_FAILED on error

Parameters

Name

Description

absTime

absolute timeout from the construction clock epoch

Created with MrDocs