logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

pthread_barrierattr_destroy.3p (3650B)


  1. '\" et
  2. .TH PTHREAD_BARRIERATTR_DESTROY "3P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual"
  3. .\"
  4. .SH PROLOG
  5. This manual page is part of the POSIX Programmer's Manual.
  6. The Linux implementation of this interface may differ (consult
  7. the corresponding Linux manual page for details of Linux behavior),
  8. or the interface may not be implemented on Linux.
  9. .\"
  10. .SH NAME
  11. pthread_barrierattr_destroy,
  12. pthread_barrierattr_init
  13. \(em destroy and initialize the barrier attributes object
  14. .SH SYNOPSIS
  15. .LP
  16. .nf
  17. #include <pthread.h>
  18. .P
  19. int pthread_barrierattr_destroy(pthread_barrierattr_t *\fIattr\fP);
  20. int pthread_barrierattr_init(pthread_barrierattr_t *\fIattr\fP);
  21. .fi
  22. .SH DESCRIPTION
  23. The
  24. \fIpthread_barrierattr_destroy\fR()
  25. function shall destroy a barrier attributes object. A destroyed
  26. .IR attr
  27. attributes object can be reinitialized using
  28. \fIpthread_barrierattr_init\fR();
  29. the results of otherwise referencing the object after it
  30. has been destroyed are undefined. An implementation may cause
  31. \fIpthread_barrierattr_destroy\fR()
  32. to set the object referenced by
  33. .IR attr
  34. to an invalid value.
  35. .P
  36. The
  37. \fIpthread_barrierattr_init\fR()
  38. function shall initialize a barrier attributes object
  39. .IR attr
  40. with the default value for all of the attributes defined by the
  41. implementation.
  42. .P
  43. If
  44. \fIpthread_barrierattr_init\fR()
  45. is called specifying an already initialized
  46. .IR attr
  47. attributes object, the results are undefined.
  48. .P
  49. After a barrier attributes object has been used to initialize one or
  50. more barriers, any function affecting the attributes object (including
  51. destruction) shall not affect any previously initialized barrier.
  52. .P
  53. The behavior is undefined if the value specified by the
  54. .IR attr
  55. argument to
  56. \fIpthread_barrierattr_destroy\fR()
  57. does not refer to an initialized barrier attributes object.
  58. .SH "RETURN VALUE"
  59. If successful, the
  60. \fIpthread_barrierattr_destroy\fR()
  61. and
  62. \fIpthread_barrierattr_init\fR()
  63. functions shall return zero; otherwise, an error number shall be
  64. returned to indicate the error.
  65. .SH ERRORS
  66. The
  67. \fIpthread_barrierattr_init\fR()
  68. function shall fail if:
  69. .TP
  70. .BR ENOMEM
  71. Insufficient memory exists to initialize the barrier attributes
  72. object.
  73. .P
  74. These functions shall not return an error code of
  75. .BR [EINTR] .
  76. .LP
  77. .IR "The following sections are informative."
  78. .SH EXAMPLES
  79. None.
  80. .SH "APPLICATION USAGE"
  81. None.
  82. .SH RATIONALE
  83. If an implementation detects that the value specified by the
  84. .IR attr
  85. argument to
  86. \fIpthread_barrierattr_destroy\fR()
  87. does not refer to an initialized barrier attributes object, it is
  88. recommended that the function should fail and report an
  89. .BR [EINVAL]
  90. error.
  91. .SH "FUTURE DIRECTIONS"
  92. None.
  93. .SH "SEE ALSO"
  94. .IR "\fIpthread_barrierattr_getpshared\fR\^(\|)"
  95. .P
  96. The Base Definitions volume of POSIX.1\(hy2017,
  97. .IR "\fB<pthread.h>\fP"
  98. .\"
  99. .SH COPYRIGHT
  100. Portions of this text are reprinted and reproduced in electronic form
  101. from IEEE Std 1003.1-2017, Standard for Information Technology
  102. -- Portable Operating System Interface (POSIX), The Open Group Base
  103. Specifications Issue 7, 2018 Edition,
  104. Copyright (C) 2018 by the Institute of
  105. Electrical and Electronics Engineers, Inc and The Open Group.
  106. In the event of any discrepancy between this version and the original IEEE and
  107. The Open Group Standard, the original IEEE and The Open Group Standard
  108. is the referee document. The original Standard can be obtained online at
  109. http://www.opengroup.org/unix/online.html .
  110. .PP
  111. Any typographical or formatting errors that appear
  112. in this page are most likely
  113. to have been introduced during the conversion of the source files to
  114. man page format. To report such errors, see
  115. https://www.kernel.org/doc/man-pages/reporting_bugs.html .