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

pthread_attr_init(3T)

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

テクニカル ドキュメント

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

 ≫ 目次

 ≫ 索引

名称

pthread_attr_init(), pthread_attr_destroy() ― スレッド属性オブジェクトの初期化または消去

構文

#include <pthread.h> 
 
int pthread_attr_init( 
   pthread_attr_t *attr 
); 
 
int pthread_attr_destroy( 
   pthread_attr_t *attr 
); 

パラメータ

attr  

初期化または消去するスレッド属性オブジェクトへのポインター。

説明

pthread_attr_init() は、すべてのスレッド属性にデフォルト値を設定して、 attr が示すスレッド属性オブジェクトを初期化します。

スレッド属性オブジェクトを使用してスレッドを作成すると、新しいスレッドの属性はオブジェクトの設定値で決まります。 属性オブジェクトは、オブジェクト作成時の追加パラメータのような役割を果たします。 pthread_create() 呼び出しでは、1 つの属性オブジェクトを何度でも使用することができます。

いったんスレッド属性オブジェクトでスレッドを初期化すると、その後属性オブジェクトをどのように操作しても、すでに作成されたスレッドに影響を与えません。

スレッド属性とそのデフォルト値は、次のとおりです。

stacksize  

POSIX.1c では、デフォルト値は定義されていません。 PA-RISC プラットフォーム用の HP-UX リリースでは、デフォルトは 64K です。 Itanium(R) ベース プラットフォーム用の HP-UX リリースでは、デフォルトは 256K です。

guardsize  

デフォルト値は PAGESIZE バイトです。

stackaddr  

デフォルト値は NULL です。

detachstate  

デフォルト値は PTHREAD_CREATE_JOINABLE です。

contentionscope  

POSIX.1c では、デフォルト値は定義されていません。 HP-UX 11i v2 September 2004 以降では、デフォルトの競合範囲は PTHREAD_SCOPE_SYSTEM で、このデフォルトの競合範囲は pthread_scope_options(5) のマンページに記載されているオプションを使用して外部から指定することもできます。

inheritsched  

POSIX.1c では、デフォルト値は定義されていません。 HP-UX でのデフォルト値は PTHREAD_INHERIT_SCHED です。

schedpolicy  

POSIX.1c では、デフォルト値は定義されていません。 HP-UX でのデフォルト値は SCHED_TIMESHARE です。

schedparam  

POSIX.1c では、デフォルト値は定義されていません。

processor  

デフォルト値は PTHREAD_SPUINHERIT_NP です。

binding_type  

デフォルト値は PTHREAD_BIND_ADVISORY_NP です。

初期化済みのスレッド属性オブジェクトを再度初期化した場合、結果は不定です。

pthread_attr_destroy() は、スレッド属性オブジェクト attr を消去します。 スレッド属性オブジェクトの実体が消去され、そのリソースは再利用されます。 消去された属性オブジェクトを参照した場合、結果は不定です。 属性オブジェクトは、消去されてもスレッド属性初期化ルーチン pthread_attr_init() で再び初期化できます。

すでに作成済みのスレッドは、作成時に使用した属性オブジェクトを消去しても影響を受けません。

戻り値

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

エラー

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

[ENOMEM] 

p スレッド属性オブジェクトの初期化に必要なメモリーが足りない場合。

[EINVAL] 

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

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

[EINVAL] 

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

著者

pthread_attr_init()pthread_attr_destroy() は、IEEE POSIX P1003.1c 規格から派生しました。

標準準拠

pthread_attr_init(): POSIX 1003.1c.
pthread_attr_destroy(): POSIX 1003.1c.

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