Задать вопрос
@sortfact333

Как запустить функцию как subprocess?

Я хочу завершить часть кода так что бы остальной код продолжал работать.
def run():
    @eel.expose
    def end_browser():
        print("YES2")
        eel.end()
        eel.close()
        os._exit(0) 

    eel.init('web')
    eel.start("test.html", size=(700,700))
    

run()

import subprocess

process = subprocess.run([???], capture_output=True, shell=True)
print(process.returncode) # вернет 2 в случае ошибки

print("Continue code")


Мне посоветовали использовать subprocess но я не понимаю что нужно вставить в скобки что бы он начал работать.
Может ли кто объяснить это?
  • Вопрос задан
  • 334 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
yupiter7575
@yupiter7575
Python программист
eel.start() запускает цикл, который нельзя остановить через код. Даже если вы найдете способ, программа до этого участка кода не дойдет.
Ответ написан
Vindicar
@Vindicar
RTFM!
subprocess запускает команду, как будто ты её в терминале набрал.
Чтобы запустить в параллельном процессе функцию питон-кода, используй multiprocessing.
Если будешь пользоваться мультипроцессингом, заверни тело своей программы (т.е. непосредственно выполняемые команды, а не объявления функций или классов) в идиому
if __name__ == '__main__':
Иначе у тебя дочерние процессы будут пытаться запустить свои дочерние процессы, вместо того чтобы делать что велено.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы