AZJIO
![](http://forum.ru-board.com/board/avatars/private/AZJIO.gif)
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Orion_76 Цитата: Замнем для ясности?-)) Основная специализация PHP: работа со строками... Разница понятна?-) | Хорошо, тогда и я озвучу свою теорию для ясности. Аналоги функций Autoit в Си. Примем за аксиому, что Си предел скорости (хотя может в конкретных случаях конструкция асемблера). То есть передав интерпретируемую конструкцию движку Си можно не сомневаться что он выполнит её со скоростью, превзойти которую уже не возможно. Остаётся слабое место - скорость интерпретации и правильность построения алгоритма. Интерпретатор тоже написано на Си и достаточно быстр (PHP разве быстрее читает интерпретируемый текст), но чтобы исключить потери на интерпретации например можно вызвать рег. выр. в цикле, а можно вызвать рег. выр. так чтобы цикловая обработка заключалась внутри рег. выр. например Код: For $i = 1 To 5 $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') Next | можно рассмотреть как Код: $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') $sText=StringRegExpReplace($sText, '^(.*)\\(.*)$', '\1') | соответственно при цикле на 1000 шагов понятно почему автоит тормозит в цикле. Соответственно надо прередать в движок регексп обработку многострокового файла. То есть на интерпретации можно проиграть взависимости от сложности языка и разнообразия интерпретируемых конструкций. Естественно чем их больше, тем больше интерпретатор проверяет вариантов и рекурсивных вложний. Ну а самая потеря скорости идет от выбора наихудшего алгоритма, это когда делаются холостые ходы, особенно накладывается этот процент при обработке в цикле. Каждый такой нелепый холостой ход может увеличить скорость в разы. Даже если использовать язык Си можно также проиграть от неправильного алгоритма. Прямой пример рег.выр. при разных вариантах даёт сккорости в 2, 10, 100 разницы, хотя всё выполняется внутренним движком регекспа на Си, то есть интерпретацию можно полностью исключить. Ну и каким боком тут "Основная специализация PHP: работа со строками"? Добавлено: Skif_off Папка Include должна быть рядом с AutoIt3.exe, чтобы он их видел. А больше никаких файлов не требуется. Универсальный AutoIt3.exe (x86), который будет работать на любой ОС. А если хочешь использовать x64, то посмотри в справке "Запуск в 64-битных версиях Windows" чтобы положить соответствующую версию в правильный каталог. Добавлено: Вообщем ложи в System32 но файл соответствующий текущей оси | Всего записей: 4579 | Зарегистр. 03-05-2006 | Отправлено: 15:45 25-09-2013 | Исправлено: AZJIO, 15:58 25-09-2013 |
|