Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Поиск слабых мест в коде. getTimer. (http://www.flasher.ru/forum/showthread.php?t=81082)

Alex T 12.06.2006 12:43

Поиск слабых мест в коде. getTimer.
 
Написал класс, вроде все нормально, но стал замечать, что изрядно подтормаживает, решил оптимизировать, но сначала надо выяснить из-за чего торможения.
Вопрос: как это сделать? расставлять везде getTimer или внимательно проанализировать код? посоветуйте, пожалуйста?

Madasan 12.06.2006 12:47

Внимательно анализировать код, для точности анализа, можно расставлять getTimer() :)

aksios 12.06.2006 14:38

getTimer самая тормозная команда, надо делать как в хелпе через setInterval, причем интервал делать большим. Лучше вообще обойти его использование.

iNils 12.06.2006 14:43

Цитата:

Сообщение от aksyos
getTimer самая тормозная команда, надо делать как в хелпе через setInterval, причем интервал делать большим. Лучше вообще обойти его использование.

Я тебя не понял :)

aksios 12.06.2006 14:58

Цитата:

Сообщение от iNils
Я тебя не понял :)

В общем, где то я читал, что getTimer по собственной инициативе постоянно обращается к процу с запросами времени - количество запросов в принципе ограничено только производительностью системы.

iNils 12.06.2006 15:01

Цитата:

Сообщение от aksyos
В общем, где то я читал, что getTimer по собственной инициативе постоянно обращается к процу с запросами времени - количество запросов в принципе ограничено только производительностью системы.

Ты не ошибся? getTimer - функция которая возвращает количество миллисекунд, прошедших с момента старта муви-клипа. Ее вызывают ручками.

aksios 12.06.2006 15:12

Цитата:

Сообщение от iNils
Ты не ошибся? getTimer - функция которая возвращает количество миллисекунд, прошедших с момента старта муви-клипа. Ее вызывают ручками.

Так вот, я читал, (сам в ассемблере не проверял) что при вызове getTimer он один раз выдает значение, а сам процесс запроса системного таймера на этом не завершается и повторяется без всяких запросов. Ну типа как создать мувиклип и в свойствах сделать его не видимым на сцене - если ему не прописать stop() то он будет кушать ресурсы системы. По крайней мере, это подтверждается тем, что использование getTimer действительно приводит к "аномальному" увеличению загрузки проца.

iNils 12.06.2006 15:20

Сначала делаем так
Код:

for (var i = 0; i < 100000; i++) {
        var t = 1;
}
trace (getTimer ());

Теперь так
Код:

for (var i = 0; i < 100000; i++) {
        var t = getTimer ();
}
trace (getTimer ());

Как тебе такая проверка?

aksios 12.06.2006 15:37

Да может и баян.

Iv 12.06.2006 19:30

Речь скорее всего шла о setInterval и вопрос поднял JavaScript программер.

Аффтар топика, ты бы выдал код класса, были бы совершенно конкретные советы.
Поскольку все косяки, отрицательно влияющие на производительность, описать ни в одной книге нельзя.


Часовой пояс GMT +4, время: 05:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.