> 백엔드 개발 > 파이썬 튜토리얼 > 내 Python 프로그램에서 Ctrl C 중단(SIGINT)을 어떻게 원활하게 처리할 수 있습니까?

내 Python 프로그램에서 Ctrl C 중단(SIGINT)을 어떻게 원활하게 처리할 수 있습니까?

DDD
풀어 주다: 2024-12-14 11:23:18
원래의
543명이 탐색했습니다.

How Can I Gracefully Handle Ctrl C Interruptions (SIGINT) in My Python Program?

Python에서 SIGINT 신호 캡처

Python에서는 SIGINT(Ctrl C를 눌러 생성됨)와 같은 신호를 신호를 통해 처리할 수 있습니다. 기준 치수. 이 모듈은 Python 프로그램 내에서 신호를 관리하기 위한 포괄적인 API를 제공합니다.

SIGINT 신호를 캡처하고 사용자 정의 정리 작업을 수행하려면 다음 단계를 따르세요.

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()
로그인 후 복사

이 스크립트에서 signal_handler 함수는 SIGINT 신호에 대한 핸들러로 정의됩니다. Ctrl C를 누르면 이 함수가 호출되어 신호가 수신되었음을 나타내는 메시지를 인쇄합니다. 그런 다음 데이터베이스 연결을 닫거나 하위 프로세스를 종료하는 등 이 함수 내에 필요한 정리 코드를 포함할 수 있습니다.

signal.signal 함수는 signal_handler 함수를 SIGINT에 대한 핸들러로 등록하는 데 사용됩니다. signal.pause() 함수는 신호가 수신될 때까지 스크립트 실행을 일시 중지하고 사용자가 Ctrl C를 누를 때까지 다른 모든 작업을 일시 중지합니다.

이 접근 방식을 사용하면 Python 스크립트에서 SIGINT를 우아하게 처리할 수 있습니다. 프로그램을 종료하기 전에 사용자 정의 정리 작업을 수행합니다. 추가 정보 및 문서는 코드에 제공된 링크를 참조하세요.

위 내용은 내 Python 프로그램에서 Ctrl C 중단(SIGINT)을 어떻게 원활하게 처리할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿