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

pthread_default_rsestacksize_np(3T)

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

テクニカル ドキュメント

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

 ≫ 目次

 ≫ 索引

名称

pthread_default_rsestacksize_np() ― レジスタースタックサイズのデフォルト値の変更

構文

#include <pthread.h>

int pthread_default_rsestacksize_np( 
   size_t new_size, 
   size_t *old_size 
); 

パラメータ

new_size  

新しいレジスタースタックサイズのデフォルト値。

old_size  

旧レジスタースタックサイズのデフォルト値が返されるポインタ。

説明

pthread_default_rsestacksize_np() 関数を使用して、アプリケーションから rsestacksize 属性のデフォルト値を変更できます。 この関数はスレッドを作成する前に呼び出す必要があります。 スタックサイズの新しいデフォルト値は new_size パラメータで指定します。 old_sizeNULL でなければ、 old_size に以前のデフォルト値が返されます。 new_size が 0 であれば、この関数で現在のデフォルト値を取得することができます。

HP-UX では、デフォルトのスタックサイズを持つスレッドはそのスレッドが終了した後キャッシュされ、 次にデフォルトのスタックサイズを持つスレッドが作成される時にそのキャッシュされたスレッド (およびスタック) が再利用されます。 これにより、 pthread_create() の性能をかなり向上させることができます。

ただし、レジスタースタックのデフォルトサイズがアプリケーションに適さない場合はこの性能向上は適用されません。 pthread_default_rsestacksize_np() 関数を使用すると、スレッドライブラリはアプリケーションの要求に適合するように、スタックサイズのデフォルト値を変更します。 これによって、アプリケーションはキャッシュされたスレッドによる性能の向上を利用できます。 レジスタースタックのサイズを設定する API (pthread_default_rsestacksize_np(), pthread_attr_setrsestacksize()) が呼び出されると、スタック領域内のレジスタースタック領域のサイズが、実装依存の分割サイズではなく指定されたサイズとなり、 残りがメモリースタックとなります。

戻り値

正常終了すると、 pthread_default_rsestacksize_np() は 0 を返します。それ以外の場合はエラーを示すエラー番号が返されます (errno 変数は設定されません)。

エラー

次のいずれかの場合には、 pthread_default_rsestacksize_np() 関数は対応するエラー番号を返します。

EINVAL 

new_size で指定された値が、スレッドに必要なレジスタースタックのサイズより小さい場合。

EPERM 

呼び出したプロセスですでにスレッドが作成されている場合 (スレッドを作成する前に呼び出す必要があります)。

著者

pthread_default_rsestacksize_np() は HP で開発されました。

参照

pthread_attr_getstacksize(3T), pthread_attr_setstacksize(3T), pthread_default_stacksize_np(3T)

標準準拠

pthread_default_rsestacksize_np(): なし

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