Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 5, 2014 18:51:46

vizuhene
Зарегистрирован: 2014-01-05
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

вызов функции программы в отдельном процессе

Здравствуйте, подскажите как запустить функцию программы в отдельном потоке. Я попытался использовать
subprocess.Popen(func(), shell=False)
функция func должна напечатать ‘run’
но в ответ я получаю:

Traceback (most recent call last):
...
TypeError: 'NoneType' object is not iterable
run
оно, конечно, работает, но так явно быть не должно.

Отредактировано vizuhene (Янв. 5, 2014 18:52:15)

Офлайн

#2 Янв. 5, 2014 21:59:07

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

вызов функции программы в отдельном процессе

Popen запускает системные процессы (экзешники и батники) а не функции питона. Используйте модуль multiprocessing



Отредактировано doza_and (Янв. 5, 2014 21:59:36)

Офлайн

#3 Янв. 5, 2014 23:27:02

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2828
Репутация: +  185  -
Профиль   Отправить e-mail  

вызов функции программы в отдельном процессе

> Здравствуйте, подскажите как запустить функцию программы в отдельном потоке.

import threading
def printRun():
	print "run"
threading.Thread(target = printRun, name = "printRun", args = []).start()



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version