현재 서버에 연결되는 간단한 응용 프로그램을 파이썬으로 개발 중입니다. 현재로서는 단일 스레드입니다 (다중 스레드는 현재 필요하지 않음).실행중인 프로세스의 Python REPL
그러나 디버깅, 유지 보수 및 그 같은 또한 표준 입력란을 통해 REPL을 가질 수 있습니다.
가능하면 어떻게해야합니까? 나는 무엇이든을 명심할 필요가있을 것인가? 그것을 위해 별도의 스레드를 만들어야합니까?
현재 서버에 연결되는 간단한 응용 프로그램을 파이썬으로 개발 중입니다. 현재로서는 단일 스레드입니다 (다중 스레드는 현재 필요하지 않음).실행중인 프로세스의 Python REPL
그러나 디버깅, 유지 보수 및 그 같은 또한 표준 입력란을 통해 REPL을 가질 수 있습니다.
가능하면 어떻게해야합니까? 나는 무엇이든을 명심할 필요가있을 것인가? 그것을 위해 별도의 스레드를 만들어야합니까?
this 질문이 도움이 될 수 있습니다. 사용자 정의 REPL을 작성하기 위해 약간 수정할 수 있습니다.
비 차단 또는 스레드를 사용해야합니다.
저는 개인적으로 동시성 (concurrency)을 위해 Twisted를 사용할 것입니다. 이것은 또한 쉽게 통합 할 수있는 REPL 프로토콜을 제공합니다.
여기도 rfoo입니다. 의 README에서 :
RCONSOLE - rfoo 패키지에 포함 된 실행중인 스크립트의 네임 스페이스를 검사하고 수정하는 데 사용할 수 자동 완성, 원격 파이썬 콘솔입니다. 스크립트에서 활성화하려면
는 수행
$ rconsole
보안 참고 :
RCONSOLE 리스너가 시작을
from rfoo.utils import rconsole
rconsole.spawn_server()
가 할 쉘에서 연결하려면 spawn_server()는 모든 로컬 허용합니다 연결이므로 공유 호스트 또는 유사한 환경에서 사용하는 것이 안전하지 않을 수 있습니다!
+1 : twisted도 맨홀을 제공합니다.이 서비스는 SSH를 응용 프로그램에 적용하고 REPL이 실행되는 동안 상호 작용할 수있는 서비스입니다! – nosklo
나는 이것을 줄 것이다. 내가 필요로하는 것처럼 들리 네. – cwj