OS/window

[Window] 명령프롬프트(cmd창) 멈춤현상

앳홍 2024. 2. 6. 15:13
반응형

윈도우 환경 명령 프롬프트에 파이썬 배치 돌렸을 때, 간혹 배치가 멈춰버리는 경우가 있다.

enter 을 눌러야 그제서야 반응하는 케이스다.

 

해결을 위해 총 세가지 방법을 사용해 보았다

1. 빠른 편집 모드 해제
 

Windows 10 명령창이 멈추는 현상 해결 방법

윈도우즈에서 명령창을 자주 안쓰기도 했고 윈 7에서는 이런 현상이 없었던 것 같아 모르고있었던 현상이랄까.. 요새 부쩍들어 windows 10 에서 node JS 를 굴릴 때마다 이유없이 프로세스가 멈춰 간

iredsoap.blogspot.com

 

2. 관리자 권한으로 진행

관리자 권한으로 실행한 결과에도 멈춤현상은 지속됨

하지만 모듈을 schedule 대신 apscheduler를 사용한 결과, missed by로 얼마나 놓쳤는지 확인 가능하다

 

참고 링크를 보면 아래와 같은 내용 존재

풀에서 사용 가능한 스레드 또는 프로세스가 없어 작업 실행이 지연되는 경우, 실행기는 너무 늦게 실행되어 (원래 지정된 런타임과 비교하여) 작업을 건너 뛸 수 있습니다.
애플리케이션에서 이런 일이 발생할 가능성이 높으면 실행 프로그램의 스레드 / 프로세스 수를 늘리거나 misfire_grace_time 설정을 더 높은 값으로 조정해야 합니다.

 

현재 내 로컬 상에서 여러 프로그램을 실행중이어서 cpu가 비정기적으로 최대치를 사용할 때가 있기 때문에 이러한 현상이 일어나지 않았을까 예상한다.

 


https://jjeongil.tistory.com/944

 

Python : APScheduler : missed job : 에러, 원인, 해결법

sched = BlockingScheduler(misfire_grace_time=3600, coalesce=True) sched.add_jobstore('mongodb', collection='my_jobs') @sched.scheduled_job('cron', hour=3, id='validation') def validation(): rep = Myclass() rep.run() if __name__ == '__main__': sched.start()

jjeongil.tistory.com

 

 

마지막 방법으로, 이 방법이 윈도우에서 주기적인 작업을 하기에는 가장 오류가 적었던 것 같다.

3. 작업 스케줄러 사용

 

리눅스에 '크론탭'이 존재하듯이, 윈도우에는 '작업 스케줄러' 라는 프로그램이 존재한다.

특정시간에 원하는 작업을 자동으로 실행하게끔하는 프로그램이다.

차이점이라고 하면 UI가 존재의 유무이며 역할은 비슷하다.

 

작업스케줄러 사용방법은 아래 링크 참고!


 

작업 스케줄러로 배치파일 실행하기(1시간 간격)

참고) 배치파일 생성 방법 2023.07.17 - [OS/window] - 파이썬 배치파일 만드는 쉬운 방법 파이썬 배치파일 만드는 방법 윈도우 작업스케줄러를 사용하기위해 py 파일을 바로 실행할 수 있는 배치파일이

mingd0o0.tistory.com