Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > P

pthread_rwlockattr_getpshared(3T)

Pthread Library
HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

pthread_rwlockattr_getpshared(), pthread_rwlockattr_setpshared() — get or set the process-shared attribute

SYNOPSIS

#include <pthread.h>

int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr, int pshared);

int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *__restrict attr, int *__restrict pshared);

PARAMETERS

attr

Pointer to the read-write lock attributes object whose attributes are to be set/retrieved.

pshared

This parameter either specifies the new value of the process-shared attribute (set function) or points to the memory location where the process-shared attribute of attr is to be returned (get function).

DESCRIPTION

The attributes object attr must have been previously initialized with the function pthread_rwlockattr_init() before these functions are called.

Read-Write locks can be used only by threads within the process or shared by threads in multiple processes. The process-shared attribute in a read-write lock attributes object describes who may use the read-write lock. The legal values for the process-shared attribute are:

PTHREAD_PROCESS_SHARED

This option permits a read-write lock to be operated upon by any thread that has access to the memory where the read-write lock is allocated. The application is responsible for allocating the read-write lock in memory that multiple processes can access.

PTHREAD_PROCESS_PRIVATE

The read-write lock can 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 read-write lock, the behavior is undefined.

The default value of process-shared is PTHREAD_PROCESS_PRIVATE.

pthread_rwlockattr_setpshared() is used to set the process-shared attribute in the initialized attributes object attr. The new value of the process-shared attribute of attr is set to the value specified in the pshared parameter.

pthread_rwlockattr_getpshared() retrieves the value of the process-shared attribute from the read-write lock attributes object attr. The value of the process-shared attribute of attr is returned in the pshared parameter.

RETURN VALUE

Upon successful completion, pthread_rwlockattr_getpshared() and pthread_rwlockattr_setpshared() return zero. Otherwise, an error number is returned to indicate the error (the errno variable is not set).

ERRORS

If any of the following occur, the pthread_rwlockattr_getpshared() and pthread_rwlockattr_setpshared() functions return the corresponding error number:

ENOSYS

_POSIX_THREAD_PROCESS_SHARED is not defined and these functions are not supported.

For each of the following conditions, if the condition is detected, the pthread_rwlockattr_getpshared() and pthread_rwlockattr_setpshared() functions return the corresponding error number:

EINVAL

The value specified by attr is invalid.

EINVAL

The value specified by pshared is not a legal value.

EINVAL

The value pshared points to an illegal address.

WARNINGS

If a read-write lock is created with the process-shared attribute defined as PTHREAD_PROCESS_SHARED, the cooperating processes should have access to the memory in which the read-write lock is allocated.

AUTHOR

pthread_rwlockattr_setpshared() and pthread_rwlockattr_getpshared() were developed by X/Open.

STANDARDS CONFORMANCE

pthread_rwlockattr_setpshared(): X/Open. pthread_rwlockattr_getpshared(): X/Open.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.