====== Signale ====== Die ''signal.h'' beinhaltet die Funktionalität, um auf Signale zu reagieren. Mit der Methode ''signal()'' können Funktionen definiert werden, die als Reaktion auf bestimmte Signale aufgerufen werden. Außerdem können Signale über die Funktion ''raise()'' ausgelöst werden.\\ Signale können verschiedene Ursprünge haben: Einerseits können sie vom Programm selbst (z.B. durch eine Division durch 0) hervorgerufen werden, sie können aber auch von außen an das Programm geschickt werden. Wenn z.B. Strg+C in der Kommandozeile gedrückt wird, erhält das Programm ein Interrupt-Signal. \\ Um Portabilität von Signalen zu maximieren, sollten nur ''sig_atomic_t''-Variablen mit dem Attribut [[c:attr:volatile]] in ihnen verändert werden. ===== Datentypen ===== ^ Datentyp ^ Bedeutung ^ | [[sig_atomic_t]] | Integraler Typ, der auch von asynchronen Signalen verändert werden kann | ===== Funktionen (Makros) ===== ^ Funktion ^ Bedeutung ^ | [[raise]] | Löst ein bestimmtes Signal aus | | [[signal]] | Legt eine Funktion fest, die beim Auftreten eines Signals ausgelöst wird | ===== Links ===== * [[http://www.proggen.org/forum/viewtopic.php?f=39&t=5136|Autorendiskussion]]