pthread_once.3 (50476) | pthread_once.3 (57686) |
---|---|
1.\" Copyright (c) 1996 John Birrell <jb@cimlogic.com.au>. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 14 unchanged lines hidden (view full) --- 23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29.\" SUCH DAMAGE. 30.\" | 1.\" Copyright (c) 1996 John Birrell <jb@cimlogic.com.au>. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 14 unchanged lines hidden (view full) --- 23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29.\" SUCH DAMAGE. 30.\" |
31.\" $FreeBSD: head/share/man/man3/pthread_once.3 50476 1999-08-28 00:22:10Z peter $ | 31.\" $FreeBSD: head/share/man/man3/pthread_once.3 57686 2000-03-02 09:14:21Z sheldonh $ |
32.\" 33.Dd April 4, 1996 34.Dt PTHREAD_ONCE 3 35.Os BSD 4 36.Sh NAME 37.Nm pthread_once 38.Nd dynamic package initialization 39.Sh SYNOPSIS --- 6 unchanged lines hidden (view full) --- 46.Fn pthread_once "pthread_once_t *once_control" "void (*init_routine)(void)" 47.Sh DESCRIPTION 48The first call to 49.Fn pthread_once 50by any thread in a process, with a given 51.Fa once_control , 52will call the 53.Fn init_routine | 32.\" 33.Dd April 4, 1996 34.Dt PTHREAD_ONCE 3 35.Os BSD 4 36.Sh NAME 37.Nm pthread_once 38.Nd dynamic package initialization 39.Sh SYNOPSIS --- 6 unchanged lines hidden (view full) --- 46.Fn pthread_once "pthread_once_t *once_control" "void (*init_routine)(void)" 47.Sh DESCRIPTION 48The first call to 49.Fn pthread_once 50by any thread in a process, with a given 51.Fa once_control , 52will call the 53.Fn init_routine |
54with no arguments. Subsequent calls to | 54with no arguments. 55Subsequent calls to |
55.Fn pthread_once 56with the same 57.Fa once_control 58will not call the 59.Fn init_routine . 60On return from 61.Fn pthread_once , 62it is guaranteed that 63.Fn init_routine | 56.Fn pthread_once 57with the same 58.Fa once_control 59will not call the 60.Fn init_routine . 61On return from 62.Fn pthread_once , 63it is guaranteed that 64.Fn init_routine |
64has completed. The | 65has completed. 66The |
65.Fa once_control 66parameter is used to determine whether the associated initialization 67routine has been called. 68.Pp 69The function 70.Fn pthread_once | 67.Fa once_control 68parameter is used to determine whether the associated initialization 69routine has been called. 70.Pp 71The function 72.Fn pthread_once |
71is not a cancellation point. However, if | 73is not a cancellation point. 74However, if |
72.Fn init_routine 73is a cancellation point and is cancelled, the effect on 74.Fa once_control is as if 75.Fn pthread_once 76was never called. 77.Pp 78The constant 79.Fa PTHREAD_ONCE_INIT --- 5 unchanged lines hidden (view full) --- 85is undefined if 86.Fa once_control 87has automatic storage duration or is not initialized by 88.Fa PTHREAD_ONCE_INIT . 89.Pp 90.Sh RETURN VALUES 91If successful, the 92.Fn pthread_once | 75.Fn init_routine 76is a cancellation point and is cancelled, the effect on 77.Fa once_control is as if 78.Fn pthread_once 79was never called. 80.Pp 81The constant 82.Fa PTHREAD_ONCE_INIT --- 5 unchanged lines hidden (view full) --- 88is undefined if 89.Fa once_control 90has automatic storage duration or is not initialized by 91.Fa PTHREAD_ONCE_INIT . 92.Pp 93.Sh RETURN VALUES 94If successful, the 95.Fn pthread_once |
93function will return zero. Otherwise an error number will be returned to | 96function will return zero. 97Otherwise an error number will be returned to |
94indicate the error. 95.Sh ERRORS 96None. 97.Pp 98.Sh STANDARDS 99.Fn pthread_once 100conforms to ISO/IEC 9945-1 ANSI/IEEE 101.Pq Dq Tn POSIX 102Std 1003.1 Second Edition 1996-07-12. | 98indicate the error. 99.Sh ERRORS 100None. 101.Pp 102.Sh STANDARDS 103.Fn pthread_once 104conforms to ISO/IEC 9945-1 ANSI/IEEE 105.Pq Dq Tn POSIX 106Std 1003.1 Second Edition 1996-07-12. |