ZeToX2007
offline
Опыт:
7,009Активность: |
Что быстрей ?
Код:
Или Код:
и Код:
и ещё маленький вопросс... сколько всего можно записать информации в ХТ и стоит их создавать несколько ? |
06.08.2009, 16:43 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
PlayerDark
Coraline
offline
Опыт:
10,569Активность: |
ZeToX2007, 1) Я думаю, что по скорости обе функции одинаковы.
|
06.08.2009, 16:55 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ZeToX2007
offline
Опыт:
7,009Активность: |
Цитата:
Не наверно, а точно, по крайной мере в других языках... |
|
06.08.2009, 17:04 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
Провел бенчмарк (100 тестов), получил следующие результаты:
Как видно из тестов, GetWidgetLife/SetWidgetLife быстрее аналогов. Это может объясняться тем, что они принимают меньше аргументов и, возможно, используют универсальный алгоритм для всех виджетов. |
||||||||||||||||||||||||
06.08.2009, 17:43 | #4
+2/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MupaMaX
Мой статус
offline
Опыт:
1,495Активность: |
ShadoW_DaemoN, Мне кажется это не из-за количества аргументов, поскольку у SetUnitState больше проверок, оно начинает проверять что ей необходимо менять и делает лишние запросы... сказать лишние - глупо... GetWidgetLife знает что ей необходимо делать, и выполняет линейный алгоритм...
А от количества принимающих аргументов ничего не должно завысить... |
07.08.2009, 15:26 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
как это ничего? а стек?) |
07.08.2009, 15:45 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MupaMaX
Мой статус
offline
Опыт:
1,495Активность: |
Hellfim, не в этом смысле, я то видел, и кстати там удалили моё сообщение, которое как раз показывает глупость выше сказанных сообщений о количестве аргументов...
Смысл выигрывать этих 001 ? |
08.08.2009, 16:12 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
MupaMaX,
Не буду отвечать на этот вопрос, он слишком сложный для меня. sarcasm Cпециально для тебя провел тестирование следующих функций:
Данное сообщение как раз показывает глупость твоего сообщения о количестве аргументов. |
||||||||||||||||||||
08.08.2009, 17:18 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MupaMaX
Мой статус
offline
Опыт:
1,495Активность: |
ShadoW_DaemoN, знал что движок вара глупый, НО ЧТО БЫ НА СТОЛЬКО ? |
08.08.2009, 17:27 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MF
Что-то вокруг не так
offline
Опыт:
26,594Активность: |
MupaMaX, это не движок вара глупый. Вызов функции кидает в стэк все необходимое для ее работы. При завершении стэк освобождается. Так в каждом нормальном языке программирования. Можешь провести подобный тест на Си, Паскале, Ассемблере. Результаты будут теми же. Чем больше параметров, тем дольше вызов функции. |
08.08.2009, 17:29 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
agentex
offline
Опыт:
34,834Активность: |
ShadoW DaemoN, а как ты тестишь функции на время выполнения? такты считаешь? О_о
|
08.08.2009, 17:38 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
MupaMaX
Мой статус
offline
Опыт:
1,495Активность: |
MF, Ну я ради интереса проделал подобное с ПХП, на вызов 100 функции с 3мя параметрами ушло 0.07... а с 20-тю 0.08... причем оно прыгало то там 0.07, то там 0.07, думаю вряд ли на моем проце можно правильно замерять... ПХП не компелируется( а транслируется ) может в этом проблема... будет желание попробую на C потестить |
08.08.2009, 17:49 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
agentex, у меня Warcraft 1.21b + JAPI (с нативками StopWatch)
MupaMaX, был бы тут Адольф, он бы тебе "приятно" рассказал о том, что ты не очень хорошо разбираешься в программировании. Серьезно - я думаю, что по логике вещей это должно быть понятно, что чем больше аргументов нужно передать в функцию, тем больше будет количество переносов в рабочую область функции -> потребуется больше времени.
Закрыто из-за нецелесообразности дальнейшего разговора. |
08.08.2009, 18:35 | #13
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|