Медленная работа скриптов

  • Автор темы Автор темы Kuzmin
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Kuzmin

Топикстартер
20 лет на форуме
Сообщения
236
Реакции
92
Скрипты перебирающие множество путей очень медленно работают. Ниже пример скрипта, который оставляет выделенными около 50% выделенных путей. При 1000 выделенных путей он работает более 3-х минут (win 7/xp). Этот же скрипт запущенный через плагин scriptographer работает около секунды.

Код:
var paths = app.activeDocument.selection; // ExtendScript
// var paths = document.selectedItems; // Scriptographer

var percent = 50;

for (var i = 0; i < paths.length; i++) {
	paths[i].selected = RandomSelection(percent);
}

function RandomSelection(percent) {
	return RandomFrom(1, 100, 1) > percent;
}

function RandomFrom(from_val, to_val, step) {
	return step*(from_val + Math.round(Math.random( )*((to_val/step) - from_val)));
}

Это мои локальные проблемы или адобовского скриптового движка?
 
Ответ: Медленная работа скриптов

Скриптографер по любому работает быстрее. Насколько я понимаю, он компилирует скрипты в стандартный ява байткод, и его интерпретирует через стандартную ява-машину. А у адобы ява-машина своя, причем ужасно неуклюжая и тормозная.
 
Ответ: Медленная работа скриптов

Спасибо!
Значит в этих случаях лучше использовать скриптографер.
 
Ответ: Медленная работа скриптов

Быстрее всего чтоб работало - свой плагин написать ;)
Скриптографер - тоже не панацея, у меня, к примеру, он работает страшно косо, а под последним иллюстратором вообще не запускается и неизвестно когда адаптируют и адаптируют ли вообще :-(
 
Статус
Закрыто для дальнейших ответов.