pthread_condattr_getpshared 子例程
用途
返回条件属性对象的 pshared 属性的值。
库
线程库 (libpthreads.a)
语法
#include <pthread.h>
int pthread_condattr_getpshared (attr, pshared)
const pthread_condattr_t *attr;
int *pshared;描述
pthread_condattr_getpshared 子例程返回条件属性对象 attr的 pshared 属性的值。 此属性指定使用此属性对象创建的条件变量的进程共享。 它可能具有下列其中一个值:
| 项 | 描述 |
|---|---|
| PTHREAD_PROCESS_SHARED | 指定条件变量可以由有权访问分配它的内存的任何线程使用,即使这些线程属于不同的进程也是如此。 |
| PTHREAD_PROCESS_PRIVATE | 指定条件变量只能由创建它的线程所在的进程中的线程使用。 这是缺省值。 |
注: pthread.h 头文件必须是使用线程库的每个源文件的第一个包含文件。 否则,应使用 -D_THREAD_SAFE 编译标志,或使用 cc_r 编译器。 在这种情况下,会自动设置标志。
参数
| 项 | 描述 |
|---|---|
| attr | 指定条件属性对象。 |
| pshared | 指向将存储 pshared 属性值的位置。 |
返回值
成功完成后,将通过 pshared 参数返回 pshared 属性的值,并返回 0。 否则,将返回错误代码。
错误代码
如果以下情况成立,那么 pthread_condattr_getpshared 子例程不成功:
| 项 | 描述 |
|---|---|
| EINVAL | attr 参数无效。 |
| ENOSYS | 未实现进程共享 POSIX 选项。 |