c - リアルタイム信号の意義は?

c linux signals

標準信号。キューに入れることができる信号は1つだけです。リアルタイム信号により、複数の信号をキューに入れることができます。唯一の違いですか?または、他に利点はありますか?

ありがとう。
答え
signal(7) manpageによると、いくつかの違いがあります。

   Real-time signals are distinguished by the following:

   1.  Multiple instances of real-time signals can  be  queued.   By  con-
   trast,  if  multiple  instances  of a standard signal are delivered
   while that signal is currently blocked, then only one  instance  is
   queued.

   2.  If  the  signal  is  sent  using sigqueue(2), an accompanying value
   (either an integer or a pointer) can be sent with the  signal.   If
   the  receiving  process establishes a handler for this signal using
   the SA_SIGINFO flag to sigaction(2) then it can  obtain  this  data
   via  the  si_value  field  of the siginfo_t structure passed as the
   second argument to the handler.  Furthermore, the si_pid and si_uid
   fields  of  this  structure  can be used to obtain the PID and real
   user ID of the process sending the signal.

   3.  Real-time signals are delivered in a  guaranteed  order.   Multiple
   real-time  signals of the same type are delivered in the order they
   were sent.  If different real-time signals are sent to  a  process,
   they  are  delivered  starting  with  the  lowest-numbered  signal.
   (I.e., low-numbered signals have highest priority.)

   If both standard and real-time signals are pending for a process, POSIX
   leaves it unspecified which is delivered first.  Linux, like many other
   implementations, gives priority to standard signals in this case.
関連記事

c - gmpの配列(初期化)

c - ANSI警告なしでstdoutをファイルにリダイレクトする

c - Maven2 +ネイティブMavenプラグイン

c - HC-128 / 256をサポートするC暗号ライブラリ?

c - SWIGを使用してオプションの引数を持つTCL関数を作成する方法

c - 何らかのファイルアロケーションテーブルを使用してEEPROMに構造体を保存する

c - Ansi CのSOAPリクエストメッセージ

c - Solarisスレッドの最大数

c - Autotoolsを使用してライブラリをプログラムにリンクするには、Makefile.amとソースに何を表示する必要がありますか?

c++ - 十分に文書化されたオープンソースおよび高速C / C++画像操作ライブラリ。 「サイズ変更」のように、回転、色の変更、切り抜き[終了]