Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 17, 2009 06:56:25

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

асинхронный запуск внешней программы

o7412369815963
хелп, кода я подключаюсь к серверу через ssh, и запускаю прогу через os.spawnl или subprocess.Popen, прога работает ассинхронно, когда я в ssh делаю выход (exit), проиходит как бы отлогинивание но окно ssh весит не закрывается и в него валяться сообщения от запущенной программы, если я закрываю ssh клиент то запущеная прога умирает.

как сделать что-б она продолжала работать?
пока выкрутился вот так: screen -A -m -d -S qeqweqw python qwe.py

ЗЫ: это под nix

Офлайн

#2 Ноя. 17, 2009 07:15:32

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

асинхронный запуск внешней программы

если у тебя фряшка то можно использовать демонизасию /usr/sbin/daemon

Офлайн

#3 Ноя. 17, 2009 16:30:04

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

асинхронный запуск внешней программы

Нужна классика: прикрыть три стандартных потока и вызвать setsid с fork. Подойдет любой пример “как сделать демона”.



Отредактировано (Ноя. 17, 2009 16:30:22)

Офлайн

#4 Фев. 8, 2010 14:11:02

axe
От:
Зарегистрирован: 2008-08-07
Сообщения: 256
Репутация: +  0  -
Профиль   Отправить e-mail  

асинхронный запуск внешней программы

Striver
При попытке применить spawnl вылазит радостное сообщение от микрософта
в документации вроде бы пишут, что вместо os.system и ему подобных spawn желательно использовать subprocess. Может быть в 3.1 их убрали совсем? (а не бага это)



Офлайн

#5 Фев. 9, 2010 12:27:16

cybergrind
От:
Зарегистрирован: 2008-01-21
Сообщения: 201
Репутация: +  0  -
Профиль   Отправить e-mail  

асинхронный запуск внешней программы

ага, или взять готовую реализацию демона, или можно запустить с nohup (nohup python smth.py)



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version