Многопоточность в Human Emulator Studio. Изолированные закладки.
Многопоточность в Human Emulator Studio. Изолированные закладки.
Первая статья из цикла про многопоточность в Human Emulator Studio Многопоточность в Human Emulator Studio. Изолированные закладки. Подробнее поговорим про server_tab и работу с этой переменной из C#.
Скачать примеры на php и C#
Скачать примеры на php и C#
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Подскажите, как запускать следующие задания не дожидаясь выполнения текущего.
Код: Выделить всё
$bat_str .='"C:\XWeb Studio\Human Emulator Studio\PHP\php.exe" -c "C:\XWeb Studio\Human Emulator Studio\PHP\php.ini" -f "C:\XWeb Studio\Human Emulator Studio\My Scripts\multi\thread.php" '.$i."\r\n";
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Скрипт один, но с разными данными в закладках.
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Попробуйте через старт в bat файле :
https://www.computerhope.com/starthlp.htm
https://www.computerhope.com/starthlp.htm
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
По идее вот этот код и запускает сразу несколько скриптов в закладках без ожидания:
Если вам надо добавлять запуск с другими параметрами вы просто дописываете в bat файл нужные строки перед тем как его запускать:
// создаём нужное количество строк для бат файла for($i=0;$i<$cnt_browsers;$i++) { $bat_str .='"C:\XWeb Studio\Human Emulator Studio\PHP\php.exe" -c "C:\XWeb Studio\Human Emulator Studio\PHP\php.ini" -f "C:\XWeb Studio\Human Emulator Studio\My Scripts\multi\thread.php" '.$i."\r\n"; } // запишем bat файл $textfile->write_file("run.bat",$bat_str);
Если вам надо добавлять запуск с другими параметрами вы просто дописываете в bat файл нужные строки перед тем как его запускать:
// запустим на выполнение $app->shell_execute("run","run.bat");
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
На всякий случай скриншот.
- Вложения
-
- cmd.png (16.98 КБ) 9721 просмотр
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Возможно из-за того что используется один и тот же php.exe то он ожидает выполнения предыдущей команды.
Можно попробовать раскопировать папки с php скажем PHP0, PHP1, PHP2 и т.д. запускать для каждой закладки свой PHP.
То есть код в скрипте будет тогда такой:
Можно попробовать раскопировать папки с php скажем PHP0, PHP1, PHP2 и т.д. запускать для каждой закладки свой PHP.
То есть код в скрипте будет тогда такой:
// создаём нужное количество строк для бат файла for($i=0;$i<$cnt_browsers;$i++) { $bat_str .='"C:\XWeb Studio\Human Emulator Studio\PHP'.$i.'\php.exe" -c "C:\XWeb Studio\Human Emulator Studio\PHP'.$i.'\php.ini" -f "C:\XWeb Studio\Human Emulator Studio\My Scripts\multi\thread.php" '.$i."\r\n"; } // запишем bat файл $textfile->write_file("run.bat",$bat_str); // запустим на выполнение $app->shell_execute("run","run.bat");
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Хорошая идея, попробую.
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Через команду start работает и с одним php
// создаём нужное количество строк для бат файла for($i=0;$i<$cnt_browsers;$i++) { $bat_str .='start "php'.$i.'" "C:\XWeb Studio\Human Emulator Studio\PHP\php.exe" -c "C:\XWeb Studio\Human Emulator Studio\PHP\php.ini" -f "C:\XWeb Studio\Human Emulator Studio\My Scripts\multi\thread.php" '.$i."\r\n"; } // запишем bat файл $textfile->write_file("run.bat",$bat_str); // запустим на выполнение $app->shell_execute("run","run.bat");
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Работает, спасибо.
Re: Многопоточность в Human Emulator Studio. Изолированные закладки.
Если нужно работать парралельно для одинаковых пользователей на одном и том же сайте. ДОпустим количество пользователей 200 шт. Также может потребоваться использование proxy/socks/vpn.
Лучше использовать обычную мультипоточность или изолированные закладки? Если запуск и управление идет из приложения, через библиотеку.
XHEManager еще актуален? Его нужно покупать отдельно?
Лучше использовать обычную мультипоточность или изолированные закладки? Если запуск и управление идет из приложения, через библиотеку.
XHEManager еще актуален? Его нужно покупать отдельно?