UCONTEXT(3) | FreeBSD Library Functions Manual | UCONTEXT(3) |
名称
ucontext — ユーザスレッドコンテキストライブラリ
Standard C Library (libc, -lc)書式
#include < ucontext.h>解説
ucontext_t タイプは、実行のユーザスレッドのためのコンテキストを保持するのにふさわしい構造体タイプです。スレッドのコンテキストは、そのスタック、保存されたレジスタ、およびブロックされたシグナルのリストを含んでいます。ucontext_t 構造体は、少なくとも次のフィールドを含んでいます。
- ucontext_t *uc_link
- これが返る時に、仮定するべきコンテキスト
- sigset_t uc_sigmask
- ブロックされているシグナル
- stack_t uc_stack
- スタック領域
- mcontext_t uc_mcontext
- 保存されたレジスタ
uc_link フィールドは、このコンテキストのエントリポイント関数が返る場合に、再開 (リジューム) するべきコンテキストを指します。 uc_link が NULL と等しい場合、このコンテキストが返る時に、プロセスは、終了します。
uc_mcontext フィールドは、機械依存で、移植性のあるアプリケーションによって不透明なものとして扱われるべきです。
次の関数は、 ucontext_t 構造体を操作するために定義されています。
- int getcontext( ucontext_t *);
- ucontext_t * getcontextx( void);
- int setcontext( const ucontext_t *);
- void makecontext( ucontext_t *, void (*)(void), int, ...);
- int swapcontext( ucontext_t *, const ucontext_t *);
September 10, 2002 | FreeBSD |