Разное количество потоков у функций
-
Добрый день, подскажите, можно ли для разных функций задавать разное количество потоков?
Например, основная функция идет одним потоком, потом внутри основной функции вызывается дополнительная функция уже с 10 потоками. Дополнительная функция завершается и дальше продолжается основная и т.д.?
Либо есть ли возможность "убить" ненужные потоки в основной функции и потом восстановить их в дополнительной функции? Спасибо!
-
@bvvcpa Пока такая возможность реализована только на уровне апи, в конструктор она не выведена. Но это легко имитировать используя глобальные переменные.
Например, основная функция идет одним потоком
Пусть это будет секция номер 1
потом внутри основной функции вызывается дополнительная функция уже с 10 потоками
Секция номер 2
функция завершается и дальше продолжается основная
Секция номер 3
Пусть номер секции будет храниться в глобальной переменной. Тогда в начале потока в зависимости от текущей секции будет выполняться функция Stage1, Stage2, Stage3 соответственно.
Разное количество потоков можно обеспечить вызывая сон в случае, если секция равна 1 или 3 и номер потока больше 1.
Вот пример реализации:
В будущем будет возможно редактировать секции через пользовательский интерфейс.
-
Спасибо, помогло!