Name

NAME

pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared — get and set the process-shared attribute of the read-write lock attributes object

SYNOPSIS

THR TSH #include <pthread.h>

        int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *
            restrict attr,   int *restrict pshared);
        int pthread_rwlockattr_setpshared(pthread_rwlockattr_t  *attr,
            int pshared) ;

DESCRIPTION

The pthread_rwlockattr_getpshared() function shall obtain the value of the process-shared attribute from the initialized attributes object referenced by attr. The pthread_rwlockattr_setpshared() function shall set the process-shared attribute in an initialized attributes object referenced by attr.

The process-shared attribute shall be set to PTHREAD_PROCESS_SHARED to permit a read-write lock to be operated upon by any thread that has access to the memory where the read-write lock is allocated, even if the read-write lock is allocated in memory that is shared by multiple processes. If the process-shared attribute is PTHREAD_PROCESS_PRIVATE, the read-write lock shall only be operated upon by threads created within the same process as the thread that initialized the read-write lock; if threads of differing processes attempt to operate on such a read-write lock, the behavior is undefined. The default value of the process-shared attribute shall be PTHREAD_PROCESS_PRIVATE.

Additional attributes, their default values, and the names of the associated functions to get and set those attribute values are implementation-defined.

RETURN VALUE

Upon successful completion, the pthread_rwlockattr_getpshared() function shall return zero and store the value of the process-shared attribute of attr into the object referenced by the pshared parameter. Otherwise, an error number shall be returned to indicate the error.

If successful, the pthread_rwlockattr_setpshared() function shall return zero; otherwise, an error number shall be returned to indicate the error.

ERRORS

The pthread_rwlockattr_getpshared() and pthread_rwlockattr_setpshared() functions may fail if:

[EINVAL]

The value specified by attr is invalid.

The pthread_rwlockattr_setpshared() function may fail if:

[EINVAL]

The new value specified for the attribute is outside the range of legal values for that attribute.

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

EXAMPLES

None.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

pthread_rwlock_destroy(), pthread_rwlockattr_destroy(), pthread_rwlockattr_init(), the Base Definitions volume of IEEE Std 1003.1-2001, <pthread.h>

CHANGE HISTORY

First released in Issue 5.

Issue 6

The following changes are made for alignment with IEEE Std 1003.lj-2000:

  • The margin code in the SYNOPSIS is changed to THR to indicate that the functionality is now part of the Threads option (previously it was part of the Read-Write Locks option in IEEE Std 1003.lj-2000 and also part of the XSI extension).

  • The DESCRIPTION notes that additional attributes are implementation-defined.

  • The SEE ALSO section is updated.

The restrict keyword is added to the pthread_rwlockattr_getshared() prototype for alignment with the ISO/IEC 9899:1999 standard.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.217.246.35