EN JA
UCONTEXT(3)
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_linkNULL と等しい場合、このコンテキストが返る時に、プロセスは、終了します。

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