Найти - Пользователи
Полная версия: Запуск приложения в несколько потоков из скрипта
Начало » Python для новичков » Запуск приложения в несколько потоков из скрипта
1
Mut
Доброго времени суток!
Есть скрипт, написаный на питоне, он генерирует некий набор путей к файлам. Из этого скрипта нужно вызывать программу в N(например 2) потока(!не больше).Программ на вход будет принимать определенные параметры и путь к файлу. Многопоточность нужна для ускоренной обработки файлов внешней программой. так же писать лог после завершения каждого из потоков. потоки совершенно независимы
Нужен совет, что для этого лучше использовать?
4kpt
Что значит генерирует набор путей? Это динамическое создания набора или пути генерируются сразу, на первом этапе и скрипт передает дальше уже готовый и неизменный для данного запуска список?
Далее. Программа, которая должна вызываться внешняя или тоже скрипт питона?
py.user.next
Mut
Многопоточность нужна для ускоренной обработки файлов внешней программой
модуль threading не ускоряет, а только распараллеливает
Mut
4kpt
Что значит генерирует набор путей? Это динамическое создания набора или пути генерируются сразу, на первом этапе и скрипт передает дальше уже готовый и неизменный для данного запуска список?Далее. Программа, которая должна вызываться внешняя или тоже скрипт питона?
Пути генерируется сразу и параметры, с которыми будет запускаться программа. просто в момент запуска будет подставляться нужный путь. Программа внешняя, проприетарная.
doza_and
Вообще это классическая задача билда. Решается в одну строчку любым из средств сборки make, scons, bjam и т.п.
Mut
doza_and
Вообще это классическая задача билда. Решается в одну строчку любым из средств сборки make, scons, bjam и т.п.
а можно подробнее?
doza_and
ну если на питоне то scons
файл для произвольной команды:
SConscript
import os,glob
env  =  Environment(ENV=os.environ)
targets = [env.Command(os.path.splitext(i)[0], i, "g++ -o ${TARGET} ${SOURCE}") for i in glob.glob("*.cpp")]
запуск scons -j16 и получите исполнение 16 процессов
:( Я ошибся. Три строчки.

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB