У меня есть вишневое приложение, которое вызывает подпроцесс (subprocess.Popen), он отлично работает в большинстве случаев, но иногда он не работает. Когда я перезапускаю сервер, subprocess.popen вызывается и работает нормально. Есть ли способ контролировать потоки в черри и проверить, почему subprocess.popen не был вызван.cherrypy thread не создает подпроцесс
Update: нить продолжает остальную часть кода, и я мог бы ответ, только проблема в том, подпроцесс не называется
образец кода
def fn_test(self,**args):
#return args['md5'].split()[0]
final_html="the complete html"
for i in ['ab','cd','ef']:
if args.has_key(i):
cherrypy.session[i]='checked'
else:
cherrypy.session[i]=''
subprocess.Popen(["python","test.py",'test','aval','bval'])
return final_html
Можете ли вы показать упрощенную версию своего кода, который воспроизводит проблему? – saaj
saaj извините за задержку в ответе, я добавил пример кода, пожалуйста, дайте мне знать, если у вас есть какие-либо вопросы, также проблема у меня есть subprocess.popen не запускается время от времени – user1865928
Расскажите подробнее о том, что делает подпроцесс. Как вы узнали, что это не было вызвано? Я не вижу вмешательства в возвращаемое значение. Какова цель подпроцесса? У вас есть вход в модуль, чтобы вы могли рассуждать о его правильности? Почему вы не можете импортировать модуль и использовать его напрямую? – saaj