|
0 / 0 / 0
Регистрация: 29.03.2016
Сообщений: 11
|
|
Выполнение команд параллельно, но не более N одновременно28.03.2017, 17:12. Показов 7642. Ответов 4
Приветствую, прошу помощи с написанием bat скрипта. Необходимый функционал:
Из файла (txt) запускает команды (запуск exe + флаги, каждая команда с новой строки). Отслеживает кол-во запущенных в текущий момент и запускает недостающее число до N. Основная трудность в том, что каждый запущенный процесс имеет отличное время жизни от других, следствием - необходимость отслеживать кол-во работающих через список процессов (название процесса - example.exe). Таким образом, скрипт должен поддерживать кол-во работающих процессов = N. Для лучшего понимания привожу пример: В каждой строке файла содержится команда на архивацию определенной папки (размеры всех папок разные, соответственно и время архивации тоже), скрипт стартует 10 первых команд и ждет (N в данном случае = 10) . Как только 1 из процессов завершается, стартует следующий (чтобы кол-во запущенных было = N), согласно порядку в .txt файле (тоесть с 11-й строки) и так далее, до исчерпания команд в текстовике. На Linux'e использовал GNU Parallel, который полностью удовлетворял потребности, альтернативу на win, увы, не нашел, если кто знает - прошу подсказать. Буду крайне благодарен за любою помощь в решении данной задачи
0
|
|
| 28.03.2017, 17:12 | |
|
Ответы с готовыми решениями:
4
Выполнение нескольких команд одновременно Выполнение макроса в двух и более книгах одновременно
|
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||
| 28.03.2017, 17:59 | ||
|
запускается первая команда на архивацию, которая запрягает архиватор, который делает свою работу и пока он не закончит, вторая и следующие команды на вынужденном перекуре аль не так надобно? Если нужна параллель и при этом архиватору сунуть сразу несколько папок (а размер-то их разный из ваших слов), никакой гарантии уже нет что из этой кучи заархивируется быстрее (от файлов сильно будет зависеть) и какая уж тут очередность в задуманном порядке и назвать этот процесс параллельной работой я сильно затрудняюсь ваш ход ...
0
|
||
|
0 / 0 / 0
Регистрация: 29.03.2016
Сообщений: 11
|
|
| 28.03.2017, 18:31 [ТС] | |
|
Архиватор привел лишь в пример. Поочередное выполнение не устраивает, необходимо именно параллельное, но не более/менее N процессов одновременно т.е по завершению старых необходимо запускать новые чтоб кол-во запущенных было = N . Может есть какие-либо идеи как это реализовать?
0
|
|
|
Любознательный
7406 / 2256 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
|
|||||||
| 28.03.2017, 18:42 | |||||||
ну, а истинную параллельность можно получить в powershell (3.0)...
0
|
|||||||
|
0 / 0 / 0
Регистрация: 29.03.2016
Сообщений: 11
|
|
| 28.03.2017, 18:49 [ТС] | |
|
Все верно, только вот bat'ы сложнее start/kill/wait писать не умею, из-за чего и создал тему
Был бы крайне благодарен за помощь в написании самого скрипта.
0
|
|
| 28.03.2017, 18:49 | |
|
Помогаю со студенческими работами здесь
5
Выполнение одновременно несколько sql запросов одновременно Выполнение хранимой процедуры (последовательно или параллельно?) Как организовать выполнение двух различных задач параллельно C++ Выполнение команд Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|