diff -r 64edc459a9c5 -r fb862232e704 c++/POSIXoveFronty/Fronta/program.cpp --- a/c++/POSIXoveFronty/Fronta/program.cpp Sun Apr 05 12:56:59 2009 +0200 +++ b/c++/POSIXoveFronty/Fronta/program.cpp Sun Apr 05 21:08:09 2009 +0200 @@ -11,13 +11,19 @@ #include #include #include +#include using namespace std; +/** + * Spuštění programu „POSIXovéFronty“ + */ int main() { cout << "Vítejte v programu POSIXovéFronty" << endl; + signal(SIGTERM, zpracujSignal); + mq_vlastnosti.mq_maxmsg = POCET_ZPRAV_VE_FRONTE; mq_vlastnosti.mq_msgsize = DELKA_ZPRAVY; @@ -69,9 +75,14 @@ char zprava[] = "zpráva"; - mq_send(fronta, zprava, strlen(zprava) + 1, 0); + int vysledek = mq_send(fronta, zprava, strlen(zprava) + 1, 0); + if (vysledek == 0) { + cout << "Zpráva odeslána" << endl; + } else { + cout << "Při odesílání zprávy došlo k chybě" << endl; + } - cin.get(); + //cin.get(); mq_close(fronta); } @@ -90,6 +101,12 @@ //mq_unlink(NAZEV_FRONTY); mq_close(fronta); +} +void zpracujSignal(int signal) { + if (signal == SIGTERM) { + cout << "Končím program na základě signálu " << signal << endl; + exit(1); + } +} -}