Processo de multiprocessamento python é eliminado por solicitação http se o ipdb for importado

Parece simplesmente importaripdb ao fazer uma solicitação http envolvida em ummultiprocessing Process instância faz com que o programa saia sem erros ou mensagens.

O script a seguir se comporta de maneira estranha:

from multiprocessing import Process
import requests
import ipdb

def spawn():

    print("before")
    r = requests.get("http://wtfismyip.com")
    print("after")

Process(target=spawn).start()

Se você executar isso no terminal, a saída é simplesmentebefore e você está de volta quando solicitado. Se você comentarimport ipdb está tudo bem e a solicitação foi feita com sucesso.

Armazenando oProcess instância em uma variável e chamandojoin() depois destart() não fez diferença.Isso acontece no Python 2.7.10 e 3.5.0.Faznão acontecer com o tradicionalpdb.Outras pessoasaqui eaqui também tiveram esse problema. No primeiro, não tenho certeza se a importaçãoipdb foi a causa. No último, parecia ser um problema de atualização da versão do pacote / python, mas verifiquei se meuiPython eipdb são as últimas atuais (4.0.0 e 0.8.1).

Alguém pode explicar por que isso está acontecendo?

questionAnswers(0)

yourAnswerToTheQuestion