Pergunta

Would it be possible to write a twisted-powered application that opens an interactive shell, e.g. to tweak the business objects served via the twisted protocol layer?

My current problem is that the reactor.run() blocks the application, and the IPython.embed() is only run after the reactor has finished.

Foi útil?

Solução

Unless you specifically need extras that are only in ipython, you really should check out manhole (twistedmatrix example code)

It lets you access a python interactive shell that is natively running in the twisted reactor. Normally the shell is accessed via telnet or ssh, but if you wanted to be creative you could wire it up any way you want.

Outras dicas

... Meanwhile I found an answer to my question: http://twistedmatrix.com/documents/current/core/howto/threading.html

def interact():
   import IPython
   IPython.embed()

reactor.callInThread(interact)
reactor.run()
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top