QNXのシグナルは、POSIXと云うことになっていますが、sigacition()のパラメタで、 action.sa_flags != SA_RESTARTは指定できないのでしょうか? システムコールがエラーで終了するのは、あんまりうれしくないです。
signal.h を見てもらうと分かるのですが、SA_RESTART フラグはコメントアウトされて(not supported yet) となっており、指定する ことが出来ません。 Foundry27 の中でも Reported issues で報告されていますので、改善されることをお待ち下さい。
こんにちは。 回答を頂き、ありがとうございました。 たしかに、signal.h ではSA_RESTART フラグはコメントアウトされています。 今回は、シグナルに関係しないスレッドでは、シグナルをマスクし、 シグナルを使うスレッドでは、受付ても大丈夫な状態でのみシグナルマスクを 解除するようにコーディングししてみました。 これでシステムコールが割り込まれることは無いはずですが...。
そうですね。 良い方法だと思います。