2009-03-24 4 views
20

저는 Python 개발을위한 PyDev 플러그인과 함께 Windows에서 Eclipse를 사용하고 있습니다. 응용 프로그램을 시작하기 위해 'Run'을 사용하면 새로운 Python (CPython) 인스턴스가 생성됩니다. '종료'버튼 (붉은 색 사각형)을 사용하면 프로세스가 종료됩니다. 그러나 SIGKILL을 수행하는 것으로 보이므로 내 종료 처리기가 정리할 수 없습니다.SIGKILL 대신 Eclipse를 부드럽게 종료 할 수 있습니까?

Eclipse에 SIGTERM을 보내거나 Eclipse 콘솔에서 키보드 인터럽트 (ctrl-c)를 시뮬레이트 할 수있는 방법이 있습니까?

참고 :이 문제를 해결할 수있는 Komodo 또는 Wing과 같은 다른 Python IDE가 있다는 것을 알고 있지만이 문제를 전환하지 않을 것입니다.

+1

이 모든 해결책/해결 방법 ?? – gsagrawal

+0

Eclipse는 SIGKILL을 사용하지 않습니다. – djechlin

답변

10

Eclipse는 신호를 보내는 Java Process API를 사용합니다. 이것은 기본 API이며이를 변경할 수있는 방법이 없습니다. 나는 SIGKILL에 대한 핸들러를 설치하려고 시도했으나 작동하지 않는다고 가정합니다.

따라서 유일한 해결책은 프로세스를 나열하고 SIGTERM 중 하나에 작은 배치 파일을 작성하는 것입니다. 명령 프롬프트에서 호출하십시오. Alt-Tab을 사용하여 전환하는 경우 Eclipse 내부에서 수행하는 것처럼 거의 편안합니다.

또는 배치 파일을 호출하는 플러그인을 작성하십시오.

+3

SIGKILL에 대한 핸들러를 설치하는 것은 정의 상으로는 결코 실행되지 않으므로 무의미합니다. SIGTERM은 프로그램에 종료를 요청합니다. SIGKILL은 운영체제가 사전에 통지하지 않고 강제로 프로그램을 종료하도록합니다. – Powerlord

+0

Bemrose : 많이 추측했지만 너무 게으르다 보니 :) –

관련 문제