Как задать кол-во потоков в зависимости от значения ресурса?



  • Здравствуйте, форумчане. Недавно начал пользоваться BASом.
    Необходимо в зависимости от значения ресурса (Списка) запустить определенное количество потоков.
    Пробовал с помощью конструктора сделать условие и получить то, что мне нужно. Но это работает только тогда, когда вывожу полученное значение в лог. Если же подставить в КОЛИЧЕСТВО ПОТОКОВ, то выбивается ошибку Parse...
    Скажите пожалуйста, возможно ли вообще реализовать подобное или придется пользоваться асинхронными функциями?



  • @flagman11, @GhostZ said in Как настроить включение функций через ресурсы?:

    @vsyacheskiy, можно, и несколько потоков для каждой функции тоже можно

    1. Вставить RMap("test").at(0).split("\u002C").length в количество потоков с типом expression, test - имя ресурса содержащего список функций.
    2. Выполнить код
    var list_selected_functions = RMap("test").at(0).split(","); //test - имя ресурса содержащего список функций
    var id = 1;
    var i = 1;
    while(true){
    	if(i==thread_number()){
    		[[FUNCTION_NAME]] = list_selected_functions[id-1];
    		break;
    	};
    	if(id==list_selected_functions.length){
    		id = 0;
    	};
    	id++;
    	i++;
    };
    
    1. if([[FUNCTION_NAME]]=="Функция1"){Выполнить func1} и т.д

    Пример скрипта: test_multifunction.xml



  • @flagman11 said in Как задать кол-во потоков в зависимости от значения ресурса?:

    Здравствуйте, форумчане. Недавно начал пользоваться BASом.
    Необходимо в зависимости от значения ресурса (Списка) запустить определенное количество потоков.
    Пробовал с помощью конструктора сделать условие и получить то, что мне нужно. Но это работает только тогда, когда вывожу полученное значение в лог. Если же подставить в КОЛИЧЕСТВО ПОТОКОВ, то выбивается ошибку Parse...
    Скажите пожалуйста, возможно ли вообще реализовать подобное или придется пользоваться асинхронными функциями?

    https://community.bablosoft.com/topic/3521/лайфхаки-bas/30



  • @GhostZ Благодарю за помощь, это то, что мне нужно )



  • @Fox Спасибо. Не очень понимаю, почему не смог сконструировать выражение через IF ( Ведь если вставляю это expression в лог, то результат корректно выводится ). Буду разбираться с этими методами


Log in to reply