Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

siginterrupt - Verhalten von Systemaufrufen bei Unterbrechungen ändern

&pagelevel(4)&pagelevel

Definition

#include <signal.h>

int siginterrupt(int sig, int flag);

Beschreibung

siginterrupt() wird verwendet, um das Neustartverhalten von Systemaufrufen zu ändern, wenn der Systemaufruf durch das angegebene Signal unterbrochen wurde. Die Funktion hat die selbe Wirkung, wie in folgender Implementierung gezeigt:

siginterrupt(int sig, int flag) {
   int ret;
   struct sigaction act;
   (void) sigaction(sig, NULL, &act);
   if (flag)
       act.sa_flags &=~SA_RESTART;
   else
       act.sa_fags |= SA_RESTART;
   ret=sigaction(sig, &act, NULL);
   return ret;
   }

Returnwert

0

bei Erfolg.

 

-1

bei Fehler. errno wird gesetzt, um den Fehler anzuzeigen.

Fehler

siginterrupt() schlägt fehl, wenn gilt:


EINVAL

Das Argument sig gibt eine ungültige Signalnummer an.

Hinweis

siginterrupt() unterstützt Programme, die „historische“ Systemschnittstellen benutzen. Eine portierbare Anwendung sollte, wenn sie neu- bzw. umgeschrieben wird, an Stelle von siginterrupt() die Funktion sigaction() mit dem Flag SA_RESTART verwenden.

Siehe auch

sigaction(), signal.h.