Есть ли способ, сколько времени займет функция? - PullRequest
3 голосов
/ 18 января 2010

У меня есть какая-то функция, которую я хочу использовать, но не знаю, как это сделать. В javascript я могу просто получить текущее время в миллисекундах, запустить оставшуюся часть моей функции, снова получить текущее время в миллисекундах и предупредить разницу. Виола, я знаю, как долго работает эта функция.

В ActionScript он запускает все сразу, так что мои времена начала и окончания одинаковы. Как я могу измерить промежуток времени, который функция обрабатывает?

Спасибо

1 Ответ

7 голосов
/ 18 января 2010

Быстрый способ ниже.Лучше сделать статистический тест, например.Запустите toMeasure 100 раз между установкой time1 и time2 и делением результата на 100. Это может дать вам более реалистичную оценку.Помните, что современные компьютеры могут выполнять небольшие вычисления за миллисекунду.

            private var time1:Number;
            private var time2:Number;

            private function toMeasure():void
            {
                for (var i:int = 0;i<30000;i++)
                {
                    trace (i);
                }
            }

            protected function main():void
            {
                time1= new Date().time;
                toMeasure();
                time2= new Date().time;
                trace ("ms:"+(time2-time1));
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...