Разное количество потоков у функций



  • Добрый день, подскажите, можно ли для разных функций задавать разное количество потоков?
    Например, основная функция идет одним потоком, потом внутри основной функции вызывается дополнительная функция уже с 10 потоками. Дополнительная функция завершается и дальше продолжается основная и т.д.?
    Либо есть ли возможность "убить" ненужные потоки в основной функции и потом восстановить их в дополнительной функции? Спасибо!



  • @bvvcpa Пока такая возможность реализована только на уровне апи, в конструктор она не выведена. Но это легко имитировать используя глобальные переменные.

    Например, основная функция идет одним потоком

    Пусть это будет секция номер 1

    потом внутри основной функции вызывается дополнительная функция уже с 10 потоками

    Секция номер 2

    функция завершается и дальше продолжается основная

    Секция номер 3

    Пусть номер секции будет храниться в глобальной переменной. Тогда в начале потока в зависимости от текущей секции будет выполняться функция Stage1, Stage2, Stage3 соответственно.

    Разное количество потоков можно обеспечить вызывая сон в случае, если секция равна 1 или 3 и номер потока больше 1.

    Вот пример реализации:

    0_1477830301470_sections.xml

    0_1477830345410_Sections.png

    В будущем будет возможно редактировать секции через пользовательский интерфейс.



  • Спасибо, помогло!


Log in to reply