Ошибка нечетного типа с многопроцессорным модулем Python - PullRequest
0 голосов
/ 02 августа 2011

Я пытаюсь запустить сервер web.py, используя этот код:

if __name__ == "__main__":
    p = Process(target=app.run) #starts the web.py server
    p.start()
    main() #starts a main listening loop for errors, testing and logging
    p.join()

, где

app = web.application(urls, globals()) #part of the web.py framework... starts the REST server

Но я получаю это исключение:

Traceback (most recent call last):
File "apitest.py", line 90, in <module>
p = Process(target=app.run)
TypeError: this constructor takes no arguments

Я гуглил везде, но не могу найти, что происходит ... Кто-нибудь может помочь?

Спасибо!

1 Ответ

1 голос
/ 19 сентября 2014

Как предполагает agf в комментариях, ваши пространства имен, вероятно, наступают друг на друга, поэтому имя Process - это не Process, как вы думаете.Чтобы это исправить, измените способ импорта Process на более явный:

import multiprocessing

# ...all your other code...

p = multiprocessing.Process(target=app.run) # starts the web.py server
...