2008-07-22 Joel Sherrill <joel.sherrill@OARcorp.com>

pr1291/cpukit
	* posix_users/mutex.t: Add ETIMEDOUT.
	* posix_users/semaphores.t: Clarify text to say absolute timeout.
This commit is contained in:
Joel Sherrill
2008-07-22 17:18:09 +00:00
parent a2cf229615
commit e5c0540d6a
3 changed files with 20 additions and 8 deletions

View File

@@ -1,3 +1,9 @@
2008-07-22 Joel Sherrill <joel.sherrill@OARcorp.com>
pr1291/cpukit
* posix_users/mutex.t: Add ETIMEDOUT.
* posix_users/semaphores.t: Clarify text to say absolute timeout.
2008-07-15 Joel Sherrill <joel.sherrill@OARcorp.com> 2008-07-15 Joel Sherrill <joel.sherrill@OARcorp.com>
* user/barrier.t, user/clock.t, user/dpmem.t, user/msg.t, user/part.t, * user/barrier.t, user/clock.t, user/dpmem.t, user/msg.t, user/part.t,

View File

@@ -630,6 +630,10 @@ ceiling.
@item EDEADLK @item EDEADLK
The current thread already owns the mutex. The current thread already owns the mutex.
@item ETIMEDOUT
The calling thread was unable to obtain the mutex within the specified
timeout period.
@end table @end table
@subheading DESCRIPTION: @subheading DESCRIPTION:

View File

@@ -463,7 +463,7 @@ Multiprocessing is not supported in this implementation.
@example @example
int sem_timedwait( int sem_timedwait(
sem_t *sem, sem_t *sem,
const struct timespec *timeout const struct timespec *abstime
); );
@end example @end example
@end ifset @end ifset
@@ -484,13 +484,15 @@ The @code{sem} argument does not refewr to a valid semaphore
@end table @end table
@subheading DESCRIPTION: @subheading DESCRIPTION:
This function attemtps to lock a semaphore specified by @code{sem}, and will
wait for the semaphore for an interval specified by @code{timeout}. If the This function attemtps to lock a semaphore specified by @code{sem},
semaphore is available, then the semaphore is locked (i.e., the semaphore and will wait for the semaphore until the absolute time specified by
value is decremented) and the function returns a value of 0. The semaphore @code{abstime}. If the semaphore is available, then the semaphore is
remains locked until released by a @code{sem_post()} call. If the semaphore locked (i.e., the semaphore value is decremented) and the function
is unavailable, then the function will wait for the semaphore to become returns a value of 0. The semaphore remains locked until released by
available for the amount of time specified by @code{timeout}. a @code{sem_post()} call. If the semaphore is unavailable, then the
function will wait for the semaphore to become available for the amount
of time specified by @code{timeout}.
If the semaphore does not become available within the interval specified by If the semaphore does not become available within the interval specified by
@code{timeout}, then the function returns -1 and sets @code{errno} to EAGAIN. @code{timeout}, then the function returns -1 and sets @code{errno} to EAGAIN.