Многопоточность и выполение скриптов
- В: А HumanEmulator многопоточен?
Да, как многие уже могли заметить, в корневике программы с версии 4.0.12 появился ещё один экзешник: XHEManager. С его помощью запуск скриптов в многопоточном режиме можно значительно упростить. Не смотря на то, что Менеджер позволяет размножать папки с программой специальной опцией из меню «Файл». Так же можете ознакомиться с данной статьёй - В: Как запустить скрипт в несколько потоков?
Cтатья по этому поводу есть у нас на блоге. - В: Как правильно организовывать функции очистки и перезапуска приложения в скрипте,
для корретной работы и разгрузки памяти в многопотоке?
// функция очистки и перезапуска приложения function clear_and_restart() { global $app, $debug, $browser; // чистим все $browser->navigate("about:blank"); sleep(2); $browser->clear_address_bar_history(); $browser->clear_cache(); $browser->clear_cookies(""); $browser->clear_history(); $browser->recreate(); sleep(2); // перезапускаем приложение $app->restart($debug->get_cur_script_path(),"", $app->get_port()); }
- В: Я создаю много потоков и для каждого проставляю номер потока, а скрипты идут с переменной,
куда вставляются номера потоков,
но при следующих запусках номер потока ставится не тот который я использую в XHEManager, например поток 7030 при следующем запуске может запуститься 7034 или 7045.
В настройках программы HE (Основные "F9") нужно поставить галочку спрашивать об изменении порта. То есть проблема вся в том что порт занят, а занят он может быть потому что не успела закрыться программа при перезапуске например или не корректно прекращена была работа программы. Также есть функция app->restart, которая используется для корректного перезапуска скрипта. - В: Подскажите,синтаксис запуска конкретного скрипта по клику ярлыка, чтобы он стартовал сразу скрипт?
В ярлык пишется так C:\XWeb\7100\XWebHumanEmulatorMT.exe /start /port="7100" /script:"c:\Scripts\Script1.php". Нужно старт тоже заэкранировать через "/". Порт ставите который у вас.
Если у вас возникли пожелания какие ответы вы бы хотели видеть здесь еще, пишите в нашу службу поддержки.