Самый простой способ заключается в использовании Python собственного multiprocessing:
from multiprocessing import Process
def command1():
wait(10)
...
call1 = Process(target=command1, args=(...))
call1.start()
...
Этот модуль был введен обратно точно, чтобы облегчить нагрузку на контроль внешнего исполнения процесса функций, доступных в одной и той же кодовой базе, конечно, что можно было бы сделать, используя os.fork, subprocess. Мультипроцессор эмулирует, насколько это возможно, собственный интерфейс Python threading
moudle. Одним из непосредственных преимуществ использования многопроцессорной обработки потоковой обработки является то, что это позволяет различным рабочим процессам использовать разные ядра ЦП, фактически работающие параллельно - в то время как потоковая передача, фактически, из-за ограничений по языковому дизайну, фактически ограничена одним исполнителем сразу , таким образом, используя одно ядро, даже когда доступно несколько.
Теперь обратите внимание, что все еще есть особенности - особенно, если вы, например, вызываете их из веб-запроса. Ответьте на этот вопрос в виде ответов на несколько дней назад: Stop a background process in flask without creating zombie processes
Вы можете использовать [asyncio subprocess] (https://docs.python.org/3/library/asyncio-subprocess.html), если вы используете Python 3.4+ –
Если ваши команды являются функциями python, вы можете рассмотрите темы: https://docs.python.org/2/library/threading.html.Это также зависит от того, что вы подразумеваете под «Я не хочу ждать» – doomyster
Ну ... просто удалите «подожди» ... извините. :) Вы посмотрели на «многопроцессорность»? Вы можете начать процесс для каждой команды. Документация по умолчанию объясняет это довольно хорошо. –