Pytania otagowane jako signals

Sygnał to powiadomienie procesu o wystąpieniu zdarzenia. Sygnały są czasami opisywane jako przerwania programowe. Sygnały są analogiczne do przerwań sprzętowych, ponieważ przerywają normalny przebieg wykonywania programu; w większości przypadków nie można dokładnie przewidzieć, kiedy nadejdzie sygnał. Są zdefiniowane w standardach C i rozszerzone w POSIX, ale wiele innych języków / systemów programowania również zapewnia do nich dostęp.

14
Co zabiło mój proces i dlaczego?
Moja aplikacja działa jako proces w tle w systemie Linux. Obecnie jest uruchamiany z wiersza poleceń w oknie terminala. Niedawno użytkownik uruchamiał aplikację przez pewien czas i ta tajemnicza śmierć. Tekst: Zabity był na terminalu. Stało się to dwa razy. Zapytałem, czy ktoś w innym terminalu użył polecenia kill, aby …
614 linux  process  kill  signals 

12
Jak przechwycić SIGINT w Pythonie?
Pracuję nad skryptem Pythona, który uruchamia kilka procesów i połączeń z bazą danych. Co jakiś czas chcę zabijać skrypt sygnałem Ctrl+ Ci chciałbym zrobić porządki. W Perlu zrobiłbym to: $SIG{'INT'} = 'exit_gracefully'; sub exit_gracefully { print "Caught ^C \n"; exit (0); } Jak zrobić analogię tego w Pythonie?
534 python  controls  signals 


10
Jak zapobiegać SIGPIPE (lub obsługiwać je poprawnie)
Mam mały program serwera, który akceptuje połączenia na TCP lub lokalnym gnieździe UNIX, czyta proste polecenie i, w zależności od polecenia, wysyła odpowiedź. Problem polega na tym, że klient czasami nie jest zainteresowany odpowiedzią i wychodzi wcześniej, więc pisanie do tego gniazda spowoduje SIGPIPE i spowoduje awarię serwera. Jaka jest …
259 c  io  signals  broken-pipe  sigpipe 



9
Jaka jest różnica między sigaction a signal?
Miałem właśnie dodać dodatkowy moduł obsługi sygnału do aplikacji, którą tu mamy i zauważyłem, że autor użył sigaction()do skonfigurowania innych programów obsługi sygnału. Miałem zamiar użyć signal(). Zgodnie z konwencją powinienem się kierować, sigaction()ale jeśli pisałem od zera, którą wybrać?
143 c  signals  posix 



2
Obsługa sygnałów z wieloma wątkami w systemie Linux
Co się dzieje w systemie Linux, gdy program (który może mieć wiele wątków) odbiera sygnał, taki jak SIGTERM lub SIGHUP? Który wątek przechwytuje sygnał? Czy wiele wątków może otrzymać ten sam sygnał? Czy istnieje specjalny wątek poświęcony wyłącznie obsłudze sygnałów? Jeśli nie, co dzieje się wewnątrz wątku, który ma obsłużyć …
119 c  linux  multithreading  signals  ipc 


4
Jak mogę złapać SIGSEGV (błąd segmentacji) i uzyskać ślad stosu pod JNI na Androidzie?
Przenoszę projekt do nowego zestawu Android Native Development Kit (tj. JNI) i chciałbym złapać SIGSEGV, gdyby to się stało (prawdopodobnie również SIGILL, SIGABRT, SIGFPE), aby przedstawić ładne okno dialogowe raportowania awarii, zamiast (lub wcześniej) co się obecnie dzieje: natychmiastowa bezceremonialna śmierć procesu i prawdopodobnie próba ponownego uruchomienia go przez system …

16
Czy mogę wysłać ctrl-C (SIGINT) do aplikacji w systemie Windows?
Mam (w przeszłości) napisany wieloplatformowy (Windows / Unix) aplikacje, które po uruchomieniu z wiersza polecenia obsługiwane przez użytkownika wpisane Ctrl- Cpołączenie w taki sam sposób (czyli do zakończenia stosowania czysto). Czy w systemie Windows można wysłać Ctrl- C/ SIGINT / odpowiednik procesu z innego (niepowiązanego) procesu, aby zażądać jego czystego …


7
Jak uniknąć używania printf w obsłudze sygnału?
Ponieważ printfnie jest ponownie wprowadzany, używanie go w programie obsługi sygnału nie powinno być bezpieczne. Ale widziałem wiele przykładowych kodów, które używają printftego sposobu. Więc moje pytanie brzmi: kiedy powinniśmy unikać używania printfw module obsługi sygnału i czy istnieje zalecany zamiennik?
86 c  linux  signals 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.