Menangkap Isyarat SIGINT dalam Python
Dalam Python, pengendalian isyarat seperti SIGINT (dijana dengan menekan Ctrl C) boleh dicapai melalui isyarat modul. Modul ini menyediakan API komprehensif untuk mengurus isyarat dalam program Python.
Untuk menangkap isyarat SIGINT dan melakukan tindakan pembersihan tersuai, ikut langkah berikut:
import signal import sys def signal_handler(sig, frame): print('You pressed Ctrl+C!') # Perform any necessary cleanup tasks هنا sys.exit(0) signal.signal(signal.SIGINT, signal_handler) print('Press Ctrl+C') signal.pause()
Dalam skrip ini, fungsi signal_handler ditakrifkan sebagai pengendali untuk isyarat SIGINT. Apabila Ctrl C ditekan, fungsi ini digunakan, yang mencetak mesej untuk menunjukkan bahawa isyarat telah diterima. Anda kemudiannya boleh memasukkan sebarang kod pembersihan yang diperlukan dalam fungsi ini, seperti menutup sambungan pangkalan data atau menamatkan proses anak.
Fungsi signal.signal digunakan untuk mendaftarkan fungsi signal_handler sebagai pengendali untuk SIGINT. Fungsi signal.pause() menjeda pelaksanaan skrip sehingga isyarat diterima, menggantung semua operasi lain sehingga pengguna menekan Ctrl C.
Pendekatan ini membolehkan anda mengendalikan SIGINT dalam skrip Python anda dengan anggun, melakukan tugas pembersihan tersuai sebelum menamatkan program. Untuk maklumat lanjut dan dokumentasi, rujuk pautan yang disediakan dalam kod.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menangani Gangguan Ctrl C (SIGINT) dengan Anggun dalam Program Python Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!