other versions
PTHREAD_ATTR_SETSTACK(3) | Linux Programmer's Manual | PTHREAD_ATTR_SETSTACK(3) |
名前¶
pthread_attr_setstack, pthread_attr_getstack - スレッド属性オブジェクトのスタック属性の設定/取得を行う書式¶
#include <pthread.h> int pthread_attr_setstack(pthread_attr_t *attr, void *stackaddr, size_t stacksize); int pthread_attr_getstack(pthread_attr_t *attr, void **stackaddr, size_t *stacksize);-pthread でコンパイルしてリンクする。
glibc 向けの機能検査マクロの要件 ( feature_test_macros(7) 参照):
_POSIX_C_SOURCE >= 200112L ||
_XOPEN_SOURCE >= 600
説明¶
pthread_attr_setstack() 関数は、 attr が参照するスレッド属性オブジェクトのスタックアドレス属性と スタックサイズ属性をそれぞれ stackaddr と stacksize で 指定された値に設定する。 これらの属性により、スレッド属性オブジェクト attr を使って 作成されるスレッドが使用すべきスタックの位置とサイズが指定される。返り値¶
成功すると、これらの関数は 0 を返す。 エラーの場合、0 以外のエラー番号を返す。エラー¶
pthread_attr_setstack() は以下のエラーで失敗する場合がある。- EINVAL
- stacksize が PTHREAD_STACK_MIN (16384) よりも小さい。 システムによっては、 stackaddr か stackaddr + stacksize のアライメントが適切でない場合にも このエラーが発生する。
バージョン¶
これらの関数は glibc バージョン 2.2 以降で提供されている。準拠¶
POSIX.1-2001.注意¶
これらの関数は、スレッドのスタックが特定の場所に配置されることを保証 しなければならないアプリケーションのために提供されている。 ほとんどのアプリケーションでは、このようなことは必要なく、 これらの関数を使うのは避けるべきである。 (アプリケーションが単にスタックサイズだけをデフォルトの値から変更する 必要がある場合には pthread_attr_setstacksize(3) を使うこと)例¶
pthread_attr_init(3) を参照。関連項目¶
mmap(2), mprotect(2), posix_memalign(3), pthread_attr_init(3), pthread_attr_setguardsize(3), pthread_attr_setstackaddr(3), pthread_attr_setstacksize(3), pthread_create(3), pthreads(7)この文書について¶
この man ページは Linux man-pages プロジェクトのリリース 3.41 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。2008-10-24 | Linux |