_barrier_spin_init(SYNCH)
_barrier_spin_init --
initialize a spinning barrier
Synopsis
cc [options] -Kthread file
#include <synch.h>
int _barrier_spin_init(barrier_spin_t *barrier, int count, void *arg);
Description
_barrier_spin_init initializes the spinning barrier
pointed to by barrier to synchronize count threads.
Once initialized, the barrier can be used any number of times
without being re-initialized,
to synchronize execution of count threads.
Threads waiting at a spinning barrier will busy-wait, or ``spin'',
until all count threads arrive at the barrier.
Parameters
barrier-
pointer to barrier to be initialized
count-
number of threads to use the barrier for synchronization
arg-
NULL (reserved for future use)
barrier parameter
barrier points to the spinning barrier to be initialized.
count parameter
count is the number of threads that will be synchronized by the barrier.
That is, any threads calling _barrier_spin will spin
until count threads have reached the barrier.
arg parameter
arg should be set to NULL.
It is not currently used, but is reserved for future use.
Return values
_barrier_spin_init returns zero for success
and an error number for failure.
Errors
If the following condition is detected,
_barrier_spin_init returns the corresponding value:
EINVAL-
invalid argument specified
Warnings
A barrier should not be re-initialized
while threads are spinning at the barrier.
References
Intro(SYNCH),
_barrier_spin(SYNCH),
_barrier_spin_destroy(SYNCH),
barrier(SYNCH),
barrier_destroy(SYNCH),
barrier_init(SYNCH),
barrier_wait(SYNCH)
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 - 01 June 2005