Вопрос по потокам.



  • Всем привет! Подскажите пожалуйста как реализовать вот такую логику скрипта: 0_1504267155703_31313434.PNG
    В каждой функции свой скрипт нечем не похожий на другой, как сделать так что бы каждая функция выполнялась сразу а не последовательно? К примеру 5 разных сайтов открываются сразу и на каждом сайте происходят свои действия. 5 потоков- 5 сайтов всего их например 10, поставил 6 потоков - открылось 6 сайтов сразу(и на каждом выполняются свои функции).



  • @ROMEOinLOVE Первое, что пришло в голову:

    1. Ссылки на сайты в ресурс, брать строку с параметром notreuse, в этом случае каждый поток загрузит свой сайт.
    2. Экшн CURRENT_URL
    3. If [[CURRENT_URL]] == "http://site1. ru" => вызов нужной функции.


  • слишком большой проект выходит, советую разбить на несколько ботов, по функциям) а так можно присвоить каждой функции номера потоков с которыми они будут работать. Например функция 1 работает с потоками 1,4,7, функция 2 - 2,5,8, функция 3 - 3,6,9 и тд. в начале скрипта получать номер потока и запускать нужную функцию через switch.



  • @artihorror switch? что-то не наблюдал, не подскажете где это оно?



  • @seedgg его надо ручками на js писать и "пихать в выполнить код" инфа про него тут или же несколько if, тоже самое что switch получится, но места в разы больше занимает на экране)



  • This post is deleted!


  • This post is deleted!


  • @artihorror но ведь в таком случае если выбрать к примеру: 5 потоков а сайтов 8, выполняться только 5 сайтов а 3 проигнорирует! Подскажите пожалуйста как то можно реализовать что бы если выбрать 5 потоков, он выполнит сначала 5 а потом еще 3!?



  • @ROMEOinLOVE если сайты в списке, то выполнит сначала 5 а потом еще 3. но чтоб все 8 сайтов прогнались по всем функциям.. гемор с логикой. расхерачиваешь на 3 бота и включаешь все 3, и каждый сайт из списка пробегает по всем 3 функциям. если нужен совсем феншуй, то пиши простенький батник, который запустит всех 3 ботов хоть в каком порядке хоть с какими интервалами времени. Если уж прям горит все в 1 запихать, то давай больше инфы а лучше сразу проект, все равно он тут никому не нужен кроме как поправить)



  • @artihorror Все понятно! Спасибо огромное! У меня сайты в список идут, я просто думал что выполнит 5, а 3 проигнорит!



  • @ROMEOinLOVE я беру из ресурса (используя нотреус) , прогоняет все, независимо от кол-ва потоков.



  • @denanotherday В настройках ресурса кол-во успехов 1 поставьте, в настройках скрипта успехов столько, сколько хотите отработать строк из ресурса.



  • @artihorror подскажите пожалуйста вот такой момент: а если я сделаю загрузку сайта внутри функции, как мне сделать так что бы если выбран 1-н поток , он вызвал сначала 1-ю функцию а потом 2-ю вот пример скрипта 0_1504485501236_project.xml , а в случае выбора 2-х потоков 1-я функция запускалась в 1-ом потоке, а 2-ая функция во 2-ом потоке!?
    Если к ПРИМЕРУ в скрипте 20 функций и внутри них (функций) стоят разные сайты. Ну и соответственно логика та же: выбрали 20 потоков запустилось 20 потоков в каждом из них обработалась своя функция, а если выбрали 5 потоков то открылось 5 потоков и в них поочередно обработалось сначала 5 функций, потом еще 5 ну и т.д.



  • @ROMEOinLOVE Прлучить номер потока
    IF номер потока == 1
    Запуск первой функции
    И т.д



  • @DrPrime при такой логике если выбрать 1-н поток 2-я функция не запуститься! смотрите скрипт; там так и сделано как Вы советуете!



  • @ROMEOinLOVE
    Тогда лучше все сделать по другой логике
    Создаен фунацию OnApplicationStart, в ней :
    Создать ресурс, допустим test, количество успехов и неудач установить побольше(999999999), а одновременных использований 1
    Выполнить код

    VAR_TEST = [1,2,3,4,5,6,7,8,9,10] // чисел столько, сколько функций
    

    Затем действие FOREACH для списка [[TEST]], в котором действие добавить елемент из раздела ресурсы, в ресурс test

    Переходим обратно в Main функцию, в ней :
    IF {{test}} == 1
    Вызов функции 1
    Действие удалить текущий елемент из раздела ресурсы для
    ресурса test

    И так для каждой функции



  • @DrPrime Будьте так добры! Взгляните на пример скрипта 0_1504525468549_test.xml у меня он вылетает с ошибкой!((( Видимо я не совсем правильно Вас понял!((( Поправьте пожалуйста!!! Буду очень признателен!!!





  • @DrPrime Благодарю Вас от души!!!


Log in to reply