linux application > signal > SA_RESTARTの使いどころ
struct sigaction sa;
sa.sa_flags = SA_RESTART;
というように、シグナルのフラグとしてSA_RESTARTというのがあります。
私の理解では、「SA_RESTARTを設定している場合、recv()などの実行文においてシグナルを受けてもrecv()から抜け出さず、受けたシグナルの処理する」という理解です。
実際のソフトを作る場合、SA_RESTARTは設定する/しない、どちらでよく使われるものでしょうか?
SA_RESTARTを設定していると、意図しないrecv()からの抜け出しがなくなりよさそうに思うのですが、そうなのでしょうか?