日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトル
目次
まえがき
リファレンス・セクション
   ≫ライブラリ関数一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)


目次 索引




シグナル処理による非ローカル goto。

形式

#include <setjmp.h>

void siglongjmp (sigjmp_buf env, int value);


引数



env

sigjmp_buf構造体のアドレス。

value

ゼロ以外の値。

説明

siglongjmp関数は,同じプロセス内で,対応する sigjmp_buf引数を使って行われた直前の sigsetjmp呼び出しによって保存された環境を復元します。

すべてのアクセス可能なオブジェクトは, siglongjmpの呼び出し時に値を持ちます。唯一の例外として, sigsetjmp呼び出しと siglongjmp呼び出しの間に変更された自動記憶時間のオブジェクトの値は不定です。

siglongjmpは通常の関数呼び出しとリターン・メカニズムをバイパスするので,割り込み,シグナル,およびそれらの関連する関数の実行中も正しく動作します。ただし, siglongjmpをネストしたシグナル・ハンドラ (たとえば,別のシグナルの処理中に生成したシグナルの結果として呼び出された関数) から呼び出した場合の動作は未定義です。

siglongjmp関数は,ゼロ以外の savemask 引数で sigsetjmpを呼び出して env 引数を初期化した場合にのみ,保存されていたシグナル・マスクを復元します。

siglongjmpの完了後,プログラムは,対応する sigsetjmpの呼び出しが value によって指定された値で返ったかのように実行を続けます。 siglongjmp関数は, sigsetjmpに 0 (ゼロ) を返させることはできません。 value が 0 ならば, sigsetjmpは 1 を返します。

sigsetjmpも参照してください。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.