From aaa4964a2277a1e265da4e7b91d5b1e3c3faa84e Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 17 Jan 2011 18:27:35 +0000 Subject: cvs update pthreads --- pthreads/manual/pthread_barrier_init.html | 395 +++++++++++++++--------------- 1 file changed, 196 insertions(+), 199 deletions(-) (limited to 'pthreads/manual/pthread_barrier_init.html') diff --git a/pthreads/manual/pthread_barrier_init.html b/pthreads/manual/pthread_barrier_init.html index 065c1296f..637630ea5 100644 --- a/pthreads/manual/pthread_barrier_init.html +++ b/pthreads/manual/pthread_barrier_init.html @@ -1,200 +1,197 @@ - - - - - "PTHREAD_BARRIER_DESTROY"(P) manual page - - - - - - - - -

POSIX Threads for Windows – REFERENCE - Pthreads-w32

-

Reference Index

-

Table of Contents

-

Name

-

pthread_barrier_destroy, pthread_barrier_init - destroy and -initialize a barrier object (ADVANCED REALTIME THREADS) -

-

Synopsis

-

#include <pthread.h> -

-

int pthread_barrier_destroy(pthread_barrier_t *barrier); -
int pthread_barrier_init(pthread_barrier_t *restrict
barrier, -const pthread_barrierattr_t *restrict attr, unsigned -count); -

-

Description

-

The pthread_barrier_destroy function shall destroy the -barrier referenced by barrier and release any resources used -by the barrier. The effect of subsequent use of the barrier is -undefined until the barrier is reinitialized by another call to -pthread_barrier_init . An implementation may use this function -to set barrier to an invalid value. The results are undefined -if pthread_barrier_destroy is called when any thread is -blocked on the barrier, or if this function is called with an -uninitialized barrier. -

-

The pthread_barrier_init function shall allocate any -resources required to use the barrier referenced by barrier -and shall initialize the barrier with attributes referenced by attr. -If attr is NULL, the default barrier attributes shall be used; -the effect is the same as passing the address of a default barrier -attributes object. The results are undefined if pthread_barrier_init -is called when any thread is blocked on the barrier (that is, has not -returned from the pthread_barrier_wait(3) -call). The results are undefined if a barrier is used without first -being initialized. The results are undefined if pthread_barrier_init -is called specifying an already initialized barrier. -

-

The count argument specifies the number of threads that -must call pthread_barrier_wait(3) -before any of them successfully return from the call. The value -specified by count must be greater than zero. -

-

If the pthread_barrier_init function fails, the barrier -shall not be initialized and the contents of barrier are -undefined. -

-

Only the object referenced by barrier may be used for -performing synchronization. The result of referring to copies of that -object in calls to pthread_barrier_destroy or -pthread_barrier_wait(3) -is undefined.

-

Return Value

-

Upon successful completion, these functions shall return zero; -otherwise, an error number shall be returned to indicate the error. -

-

Errors

-

The pthread_barrier_destroy function may fail if: -

-
-
EBUSY -
- The implementation has detected an attempt to destroy a barrier - while it is in use (for example, while being used in a - pthread_barrier_wait(3) - call) by another thread. -
- EINVAL -
- The value specified by barrier is invalid. -
-

-The pthread_barrier_init function shall fail if: -

-
-
EAGAIN -
- The system lacks the necessary resources to initialize another - barrier. -
- EINVAL -
- The value specified by count is equal to zero. -
- ENOMEM -
- Insufficient memory exists to initialize the barrier. -
-

-The pthread_barrier_init function may fail if: -

-
-
EBUSY -
- The implementation has detected an attempt to reinitialize a barrier - while it is in use (for example, while being used in a - pthread_barrier_wait(3) - call) by another thread. -
- EINVAL -
- The value specified by attr is invalid. -
-

-These functions shall not return an error code of [EINTR]. -

-

The following sections are informative. -

-

Examples

-

None. -

-

Application Usage

-

The pthread_barrier_destroy and pthread_barrier_init -functions are part of the Barriers option and need not be provided on -all implementations. -

-

Pthreads-w32 defines _POSIX_BARRIERS to indicate -that these routines are implemented and may be used.

-

Rationale

-

None. -

-

Future Directions

-

None. -

-

Known Bugs

-
-
In - pthreads-win32, - pthread_barrier_wait(3) - may deadlock if the number of running threads able to wait on the - barrier object exceeds the value given as the count - parameter in pthread_barrier_init. -
-

-See Also

-

pthread_barrier_wait(3) -, the Base Definitions volume of IEEE Std 1003.1-2001, -<pthread.h> -

-

Copyright

-

Portions of this text are reprinted and reproduced in electronic -form from IEEE Std 1003.1, 2003 Edition, Standard for Information -Technology -- Portable Operating System Interface (POSIX), The Open -Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the -Institute of Electrical and Electronics Engineers, Inc and The Open -Group. In the event of any discrepancy between this version and the -original IEEE and The Open Group Standard, the original IEEE and The -Open Group Standard is the referee document. The original Standard -can be obtained online at http://www.opengroup.org/unix/online.html -. -

-

Modified by Ross Johnson for use with Pthreads-w32.

-
-

Table of Contents

- - + + + + + "PTHREAD_BARRIER_DESTROY"(P) manual page + + + + + + + + +

POSIX Threads for Windows – REFERENCE - Pthreads-w32

+

Reference Index

+

Table of Contents

+

Name

+

pthread_barrier_destroy, pthread_barrier_init - destroy and +initialize a barrier object (ADVANCED REALTIME THREADS) +

+

Synopsis

+

#include <pthread.h> +

+

int pthread_barrier_destroy(pthread_barrier_t *barrier); +
int pthread_barrier_init(pthread_barrier_t *restrict
barrier, +const pthread_barrierattr_t *restrict attr, unsigned +count); +

+

Description

+

The pthread_barrier_destroy function shall destroy the +barrier referenced by barrier and release any resources used +by the barrier. The effect of subsequent use of the barrier is +undefined until the barrier is reinitialized by another call to +pthread_barrier_init . An implementation may use this function +to set barrier to an invalid value. An error code is returned if pthread_barrier_destroy is called when any thread is +blocked on the barrier, or if this function is called with an +uninitialized barrier. +

+

The pthread_barrier_init function shall allocate any +resources required to use the barrier referenced by barrier +and shall initialize the barrier with attributes referenced by attr. +If attr is NULL, the default barrier attributes shall be used; +the effect is the same as passing the address of a default barrier +attributes object. The results are undefined if pthread_barrier_init +is called when any thread is blocked on the barrier (that is, has not +returned from the pthread_barrier_wait(3) +call). The results are undefined if a barrier is used without first +being initialized. The results are undefined if pthread_barrier_init +is called specifying an already initialized barrier. +

+

The count argument specifies the number of threads that +must call pthread_barrier_wait(3) +before any of them successfully return from the call. The value +specified by count must be greater than zero. +

+

If the pthread_barrier_init function fails, the barrier +shall not be initialized and the contents of barrier are +undefined. +

+

Only the object referenced by barrier may be used for +performing synchronization. The result of referring to copies of that +object in calls to pthread_barrier_destroy or +pthread_barrier_wait(3) +is undefined.

+

Return Value

+

Upon successful completion, these functions shall return zero; +otherwise, an error number shall be returned to indicate the error. +

+

Errors

+

The pthread_barrier_destroy function may fail if: +

+
+
EBUSY +
+ The implementation has detected an attempt to destroy a barrier + while it is in use (for example, while being used in a + pthread_barrier_wait(3) + call) by another thread. +
+ EINVAL +
+ The value specified by barrier is invalid. +
+

+The pthread_barrier_init function shall fail if: +

+
+
EAGAIN +
+ The system lacks the necessary resources to initialize another + barrier. +
+ EINVAL +
+ The value specified by count is equal to zero. +
+ ENOMEM +
+ Insufficient memory exists to initialize the barrier. +
+

+The pthread_barrier_init function may fail if: +

+
+
EBUSY +
+ The implementation has detected an attempt to reinitialize a barrier + while it is in use (for example, while being used in a + pthread_barrier_wait(3) + call) by another thread. +
+ EINVAL +
+ The value specified by attr is invalid. +
+

+These functions shall not return an error code of [EINTR]. +

+

The following sections are informative. +

+

Examples

+

None. +

+

Application Usage

+

The pthread_barrier_destroy and pthread_barrier_init +functions are part of the Barriers option and need not be provided on +all implementations. +

+

Pthreads-w32 defines _POSIX_BARRIERS to indicate +that these routines are implemented and may be used.

+

Rationale

+

None. +

+

Future Directions

+

None. +

+

Known Bugs

+
+
In + pthreads-win32, + the behaviour of threads which enter pthread_barrier_wait(3) + while the barrier is being destroyed is undefined. +
+

+See Also

+

pthread_barrier_wait(3) +, the Base Definitions volume of IEEE Std 1003.1-2001, +<pthread.h> +

+

Copyright

+

Portions of this text are reprinted and reproduced in electronic +form from IEEE Std 1003.1, 2003 Edition, Standard for Information +Technology -- Portable Operating System Interface (POSIX), The Open +Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the +Institute of Electrical and Electronics Engineers, Inc and The Open +Group. In the event of any discrepancy between this version and the +original IEEE and The Open Group Standard, the original IEEE and The +Open Group Standard is the referee document. The original Standard +can be obtained online at http://www.opengroup.org/unix/online.html +. +

+

Modified by Ross Johnson for use with Pthreads-w32.

+
+

Table of Contents

+ + \ No newline at end of file -- cgit v1.2.3