Go to main content

man pages section 3: Basic Library Functions

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

pthread_barrierattr_init(3C)

Name

pthread_barrierattr_destroy, pthread_barrierattr_init - destroy and initialize barrier attributes object

Synopsis

#include <pthread.h>

int pthread_barrierattr_destroy(pthread_barrierattr_t *attr);
int pthread_barrierattr_init(pthread_barrierattr_t *attr);

Description

The pthread_barrierattr_destroy() function destroys a barrier attributes object. A destroyed attr attributes object can be reinitialized using pthread_barrierattr_init(). The results of otherwise referencing the object after it has been destroyed are undefined. An implementation can cause pthread_barrierattr_destroy() to set the object referenced by attr to an invalid value.

The pthread_barrierattr_init() function initializes a barrier attributes object attr with the default value for all of the attributes defined by the implementation.

Results are undefined if pthread_barrierattr_init() is called specifying an already initialized attr attributes object.

After a barrier attributes object has been used to initialize one or more barriers, any function affecting the attributes object (including destruction) does not affect any previously initialized barrier.

Return Values

Upon successful completion, the pthread_barrierattr_destroy() and pthread_barrierattr_init() functions returns 0. Otherwise, an error number is returned to indicate the error.

Errors

The pthread_barrierattr_init() function will fail if:

ENOMEM

Insufficient memory exists to initialize the barrier attributes object.

The pthread_barrierattr_destroy() function may fail if:

EINVAL

The value specified by attr is invalid.

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
MT-Safe
Standard

See Also

pthread_barrierattr_getpshared(3C), attributes(7), standards(7)