Process.Kill()을 호출해도 바로 죽지 않음

C#코드에서 다른 프로세스(A라고 부르겠습니다)를 System.Diagnostics.Process의 Kill()을 호출하여 죽이고자 했는데, 바로 죽지 않고 2-3번 정도 요청했을 때 죽더라구요…혹시 비슷한 현상 겪으신 분들 있을까요? 원인을 파악하고 싶습니다.

참고로 프로세스A에서는 Sleep하다가 파일복사하는 일을 합니다.

3개의 좋아요

Close 시점에 파일복사하는 과정을 중단시키고 있나요?

2개의 좋아요

네. 항상 그런지는 좀 더 확인이 필요하지만, 10개의 파일을 복사해야 할 때 7개 복사 후 중단되는 상황은 있었습니다

3개의 좋아요

ChatGPT는 이렇게 설명하는군요…

3개의 좋아요

네 ChatGPT 말이 맞는거같네요…
만에하나 프로세스 킬로 바로 종료가된다면 파일 복사 도중 강제 종료시킨다는 과정이 나올텐데 그 파일은 깨진 파일로 남을수도있을거같아요

무조건 kill 이후 다른 상황을 처리해야한다면 2~3번 하는건 동일하지만

‘OOO 프로세스를 종료 중’ 과 비슷한 팝업 노출 후 주기적인 프로세스 킬처리로

완료가되면 다음 상황들을 수행시키는 것이 좋을 거 같아요~

3개의 좋아요

아 강제종료 했을 때 파일 깨질 것은 미처 생각못했는데 짚어주셔서 감사합니다
{kill-kill여부 확인}을 반복적으로 진행하는 게 최선이겠군요

3개의 좋아요