Если вы предоставите более подробную информацию, я уверен, что мы можем вам помочь.
я есть список / очередь из 200 команд, которые мне нужно запустить в оболочке на сервере Linux.
Я хочу, чтобы одновременно работало максимум 10 процессов (из очереди). Некоторые процессы завершатся за несколько секунд, другие - намного дольше.
Когда процесс завершится, я хочу, чтобы следующая команда «выскочила» из очереди и была выполнена.
У кого-нибудь есть код для решения этой проблемы?
Дальнейшая разработка:
Есть 200 работ, которые нужно выполнить, в какой-то очереди. Я хочу, чтобы одновременно работало не более 10 штук. Когда поток завершает часть работы, он должен запросить очередь для следующей части работы. Если в очереди больше нет работы, поток должен умереть. Когда все темы умерли, это означает, что вся работа выполнена.
Фактическая проблема, которую я пытаюсь решить, используетimapsync
синхронизировать 200 почтовых ящиков со старого почтового сервера на новый почтовый сервер. Некоторые пользователи имеют большие почтовые ящики и занимают много времени для синхронизации, другие имеют очень маленькие почтовые ящики и быстро синхронизируются.