함수 호출 시간 초과
스크립트 실행을 무기한 중단할 수 있는 Python 함수를 호출할 때 다음을 수행하는 메커니즘을 설정해야 합니다. 그것을 방지하십시오. 해결책은 스크립트가 개입하여 기능을 종료하는 시간 초과 임계값을 설정하는 것입니다.
Signal 패키지 사용
UNIX 기반 시스템의 경우 signal 패키지 강력한 솔루션을 제공합니다. 활용하려면:
다음은 예시입니다:
import signal # Handler function def handler(signum, frame): print("Timeout reached!") raise Exception("Timeout exception") # Function that may stall indefinitely def loop_forever(): while True: print("Looping") # Pause execution for 1 second time.sleep(1) # Set timeout to 5 seconds signal.alarm(5) signal.signal(signal.SIGALRM, handler) try: loop_forever() except Exception as exc: print("Exception:", exc)
loop_forever() 함수가 5초 이내에 완료되지 않으면 핸들러 함수가 호출되어 시간 초과 예외가 발생하고 프로세스가 종료됩니다.
위 내용은 시간 초과로 인해 Python 함수가 무기한 정지되는 것을 어떻게 방지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!