Pertanyaan yang diberi tag «signals»

Sinyal adalah pemberitahuan untuk proses bahwa suatu peristiwa terjadi. Sinyal terkadang digambarkan sebagai interupsi perangkat lunak. Sinyal dapat dianalogikan dengan interupsi perangkat keras yang mengganggu aliran normal pelaksanaan program; dalam banyak kasus, tidak mungkin untuk memprediksi dengan tepat kapan sinyal akan tiba. Mereka didefinisikan dalam standar C dan diperluas dalam POSIX, tetapi banyak bahasa / sistem pemrograman lain juga menyediakan akses ke sana.

14
Apa yang membunuh proses saya dan mengapa?
Aplikasi saya berjalan sebagai proses latar belakang di Linux. Saat ini dimulai pada baris perintah di jendela Terminal. Baru-baru ini seorang pengguna menjalankan aplikasi untuk sementara waktu dan itu mati secara misterius. Teks: Terbunuh berada di terminal. Ini terjadi dua kali. Saya bertanya apakah seseorang di Terminal yang berbeda menggunakan …
614 linux  process  kill  signals 

12
Bagaimana cara menangkap SIGINT dengan Python?
Saya sedang mengerjakan skrip python yang memulai beberapa proses dan koneksi basis data. Sesekali saya ingin membunuh skrip dengan aCtrlC sinyal + , dan saya ingin melakukan pembersihan. Di Perl saya akan melakukan ini: $SIG{'INT'} = 'exit_gracefully'; sub exit_gracefully { print "Caught ^C \n"; exit (0); } Bagaimana saya melakukan …
536 python  controls  signals 


10
Bagaimana mencegah SIGPIPE (atau menanganinya dengan benar)
Saya memiliki program server kecil yang menerima koneksi pada TCP atau soket UNIX lokal, membaca perintah sederhana dan, tergantung pada perintahnya, mengirimkan balasan. Masalahnya adalah bahwa klien mungkin tidak tertarik pada jawaban kadang-kadang dan keluar lebih awal, jadi menulis ke soket itu akan menyebabkan SIGPIPE dan membuat server saya crash. …
261 c  io  signals  broken-pipe  sigpipe 



9
Apa perbedaan antara sigaction dan sinyal?
Saya akan menambahkan penangan sinyal tambahan ke aplikasi yang kami miliki di sini dan saya perhatikan bahwa penulis telah sigaction()mengatur penangan sinyal lainnya. Saya akan menggunakan signal(). Untuk mengikuti konvensi saya harus menggunakan sigaction()tetapi jika saya menulis dari awal, mana yang harus saya pilih?
143 c  signals  posix 



2
Penanganan sinyal dengan banyak utas di Linux
Di Linux, apa yang terjadi ketika sebuah program (yang mungkin memiliki banyak utas) menerima sinyal, seperti SIGTERM atau SIGHUP? Utas mana yang memotong sinyal? Bisakah beberapa utas mendapatkan sinyal yang sama? Apakah ada utas khusus yang didedikasikan sepenuhnya untuk menangani sinyal? Jika tidak, apa yang terjadi di dalam utas yang …
119 c  linux  multithreading  signals  ipc 


4
Bagaimana cara menangkap SIGSEGV (kesalahan segmentasi) dan mendapatkan pelacakan tumpukan di bawah JNI di Android?
Saya memindahkan proyek ke Android Native Development Kit baru (yaitu JNI) dan saya ingin menangkap SIGSEGV, seandainya itu terjadi (mungkin juga SIGILL, SIGABRT, SIGFPE) untuk menampilkan dialog pelaporan kerusakan yang bagus, alih-alih (atau sebelum) apa yang saat ini terjadi: proses mati tanpa basa-basi dan mungkin beberapa upaya oleh OS untuk …

16
Dapatkah saya mengirim ctrl-C (SIGINT) ke aplikasi di Windows?
Saya telah (di masa lalu) yang ditulis cross-platform (Windows / Unix) aplikasi yang, ketika mulai dari baris perintah, menangani-diketik pengguna Ctrl- Ckombinasi dengan cara yang sama (yaitu untuk mengakhiri aplikasi bersih). Apakah mungkin pada Windows untuk mengirim Ctrl- C/ SIGINT / setara dengan proses dari proses lain (tidak terkait) untuk …


8
Bagaimana cara menghindari penggunaan printf di penangan sinyal?
Karena printfbukan reentrant, maka seharusnya tidak aman digunakan dalam penangan sinyal. Tetapi saya telah melihat banyak kode contoh yang menggunakan printfcara ini. Jadi pertanyaan saya adalah: kapan kita perlu menghindari penggunaan printfdalam penangan sinyal, dan apakah ada pengganti yang disarankan?
87 c  linux  signals 

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.