Provided by: manpages-ja-dev_0.5.0.0.20221215+dfsg-1_all bug

名前

       gsignal, ssignal - ソフトウェアシグナル機能

書式

       #include <signal.h>

       typedef void (*sighandler_t)(int);

       int gsignal(int signum);

       sighandler_t ssignal(int signum, sighandler_t action);

   glibc 向けの機能検査マクロの要件 (feature_test_macros(7)  参照):

       gsignal(), ssignal():
           Since glibc 2.19:
               _DEFAULT_SOURCE
           Glibc 2.19 and earlier:
               _SVID_SOURCE

説明

       Linux  ではこれらの関数を使用しないこと。  過去に間違いがあり、Linux  では  gsignal()   と
       ssignal() はそれぞれ raise(3)  と signal(2)  の別名になっている。

       一方、System V 風のシステムでは、これらの関数で、 従来の signal(2)  や kill(2)  の関数群と
       は完全に独立な、  ソフトウェアシグナリングを実現している。  ssignal()  関数は、番号 signum
       のソフトウェアシグナルが  gsignal()   関数を使って発生された時にとるべきアクションを定義す
       る。  gsignal()  の返り値は、一つ前に指定されていたアクション、もしくは  SIG_DFL  である。
       gsignal()  は以下のような動作を行う:  signum  に対してアクションが指定されていないか、アク
       ション  SIG_DFL  が指定されていた場合、何もせずに  0  を返す。  signum に対して アクション
       SIG_IGN が指定されていた場合、何もせずに 1 を返す。  それ以外の場合、アクションを  SIG_DFL
       にリセットし、引数に signum を指定してアクション関数を呼び出して、アクション関数の返り値を
       返す。 signum がとり得る値の範囲は実装により異なる (多くの場合 1〜15 か 1〜17 である)。

属性

       この節で使用されている用語の説明については、 attributes(7) を参照。

       ┌─────────────────┬───────────────┬─────────────────┐
       │インターフェース属性              │
       ├─────────────────┼───────────────┼─────────────────┤
       │gsignal()        │ Thread safety │ MT-Safe         │
       ├─────────────────┼───────────────┼─────────────────┤
       │ssignal()        │ Thread safety │ MT-Safe sigintr │
       └─────────────────┴───────────────┴─────────────────┘

準拠

       これらの関数は、AIX, DG/UX, HP-UX, SCO, Solaris, Tru64 で使用可能である。 これらのシステム
       のほとんどで廃止されたことになっており、  glibc  では正しく実装されていない。  gsignal_r()
       と ssignal_r()  が実装されているシステムもある。

関連項目

       kill(2), signal(2), raise(3)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの
       説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。

                                            2020-04-11                                 GSIGNAL(3)