Динамический вызов функций BAS в цикле foreach



  • Ребят, подскажите, как реализовать? Поискал по форуму - никто не писал о таком.

    Смотрел код скрипта там за вызов функции отвечает две строки

      _call_function(posting,{})!
      _result_function()
    

    Где posting - название функции.

    Вопрос 1, могу ли я использовать такую конструкцию в цикле? Не будет ли проблем?

    Вопрос 2, как мне передать функцию строкой, допустим у меня есть массив:

    acts = ['login','posting'];
    

    предполагаю что таким образом это не сработает, потому что я передам строку а не функцию:

     _call_function(acts[0],{})!
     _result_function()
    
    а может 
        function_callable = call(acts[0]) 
    или
        function_callable = eval(acts[0])
    
    и потом
    
     _call_function(function_callable,{})!
     _result_function()
    
    

    Подскажите плиз :)



  • @centerdevs Поищите апи баса. На формуе. ) И вызов асинхронных функций, например. Советы вам давать не будут. Это очень неоднозначный путь и разработчик сам им пользоваться не советует.
    ида вот такое _что то это асинхронный вызов.



  • Понял) Просто у меня около 30 функций, которые запускаются при разных ответах от апи) получается в каждой функции идёт проверка "А НУЖНО ЛИ МНЕ СЕЙЧАС ОТРАБОТАТЬ" ) и если от апи пришел запрос на запуск только одной функции, то скрипт начинает скакать по всем функция и возвращаться назад)



  • насколько я понимаю там можно работать в одном потоке только с одной асинхронной функцией(ждать ответа)

    если вы где то ошиблись то скорей всего ошибки не будет но что то пойдет не так потом или через час.

    в принципе так все и работает но отсутствие документации это минус этого метода.
    только методом проб и ошибок)
    ну и отсутствие диагностики тоже минус,
    нужно смотреть текущее состояние "стэка"(того интерпретатора внутреннего) и непонятно как сделать.


Log in to reply