本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
HP-UX リファレンス: セクション 3 : ライブラリ (N~Z) > p

pthread_rwlockattr_getpshared(3T)

pthread ライブラリ
HP-UX 11i Version 2: September 2004
≫ 

テクニカル ドキュメント

PDF版
フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

名称

pthread_rwlockattr_getpshared(), pthread_rwlockattr_setpshared() ― プロセス共有属性の取得と設定

構文

#include <pthread.h>

int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr,
int pshared);

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

パラメータ

attr  

属性の設定または取得の対象とする読み書きロック属性オブジェクトへのポインター。

pshared  

このパラメータは、 プロセス共有 属性の新しい値を指定する (set 関数) か、 attrプロセス共有 属性が返されるメモリー領域を指します (get 関数)。

説明

属性オブジェクト attr は、これらの関数を呼び出す前に、関数 pthread_rwlockattr_init() で事前に初期化しておかなければなりません。

読み取り書き込みロックは、プロセス内のスレッドによってのみ使用することも、複数のプロセスのスレッド間で共有することもできます。 読み書きロック属性オブジェクトの プロセス共有 属性は、読み書きロックを使用できるスレッドの範囲を規定します。 プロセス共有 属性の有効な値は、次のとおりです。

PTHREAD_PROCESS_SHARED
  

このオプションにより、読み書きロックは、読み書きロックが割り当てられているメモリーにアクセスできる任意のスレッドによって操作されるようになります。 アプリケーションは、複数のプロセスがアクセスできるメモリーへの読み書きロックの割り当てを処理しなければなりません。

PTHREAD_PROCESS_PRIVATE
  

読み書きロックは、読み書きロックを初期化したスレッドと同じプロセス内で作成されたスレッドによってのみ、操作されます。 異なるプロセスのスレッドがそのような読み書きロックを操作しようと試みた場合、動作は不定です。

プロセス共有 のデフォルト値は PTHREAD_PROCESS_PRIVATE です。

pthread_rwlockattr_setpshared() は、初期化済みの属性オブジェクト attrプロセス共有 属性を設定します。 attr の新しい プロセス共有 属性値は、 pshared パラメータで指定された領域に設定されます。

pthread_rwlockattr_getpshared() は、読み書きロック属性オブジェクト attr から プロセス共有 属性値を取得します。 attrプロセス共有 属性値は、 pshared パラメータに返されます。

戻り値

正常終了すると pthread_rwlockattr_getpshared()pthread_rwlockattr_setpshared() は 0 を返します。 それ以外の場合、エラーの内容を表すエラー番号を返します (errno 変数は使用しません)。

エラー

以下の条件の場合、 pthread_rwlockattr_getpshared()pthread_rwlockattr_setpshared() 関数は、該当するエラー番号を返します。

[ENOSYS] 

_POSIX_THREAD_PROCESS_SHARED が未定義で、これらの関数がサポートされていない場合。

以下の条件の場合、 pthread_rwlockattr_getpshared()pthread_rwlockattr_setpshared() 関数は、該当するエラー番号を返します。

[EINVAL] 

attr で指定された値が無効である場合。

[EINVAL] 

pshared で指定された値が無効である場合。

[EINVAL] 

pshared が無効なアドレスを指している場合。

警告

PTHREAD_PROCESS_SHARED で定義された プロセス共有 属性で読み書きロックを作成した場合、協調プロセスは、読み書きロックが割り当てられているメモリーにアクセスできる必要があります。

著者

pthread_rwlockattr_setpshared()pthread_rwlockattr_getpshared() は、X/Open が開発しました。

標準準拠

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

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 1983-2004 Hewlett-Packard Development Company, L.P.