Вопрос по потокам.
-
Всем привет! Подскажите пожалуйста как реализовать вот такую логику скрипта:
В каждой функции свой скрипт нечем не похожий на другой, как сделать так что бы каждая функция выполнялась сразу а не последовательно? К примеру 5 разных сайтов открываются сразу и на каждом сайте происходят свои действия. 5 потоков- 5 сайтов всего их например 10, поставил 6 потоков - открылось 6 сайтов сразу(и на каждом выполняются свои функции).
-
@ROMEOinLOVE Первое, что пришло в голову:
- Ссылки на сайты в ресурс, брать строку с параметром notreuse, в этом случае каждый поток загрузит свой сайт.
- Экшн CURRENT_URL
- 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 Благодарю Вас от души!!!