YellowStar
poon
offline
Опыт:
15,144Активность: |
Опять вопрос...
Вопрос банальный но какой минимальное значение PolledWait обрабатывается коректно в том смысле что где то слышал что call PolledWait( 0.01 ) обрабатывает как call PolledWait( 0.10 ) |
15.03.2008, 08:41 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
минимальный слип в варе 0,125 |
15.03.2008, 09:56 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
YellowStar
poon
offline
Опыт:
15,144Активность: |
А если таймерами? 0.01 |
15.03.2008, 09:59 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
это зависит от компа т.е. чем больше таймер выполняет действий тем он медленее работает чем нужно, вообще он может достигать 0,0001
Jon добавил: но при таких высоких частотах таймер отщитывает время _очень_ неправельно, т.е. результат случаен... все зависит опятьжетаки от компа |
15.03.2008, 10:16 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
Цитата:
Не совсем так, но мысль по сути верна) Смотрим: Код:
Первая bj-константа = 2.00, вторая - 0.10. Луп, в котором лежит этот код, выполнится 1 раз и при проходе через луп будет выполнено TriggerSleepAction(0.1). Но времени до окончания цикла пройдет немного больше, т.к. еще проверка идет. Кстати, я где-то в этом разделе видел цифры 0.186 для PolledWait, 0.0125 для TriggerSleepAction (имею в виду min значение) |
|
15.03.2008, 16:24 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
уж слишком мало... неошибаешся? |
|
15.03.2008, 16:31 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ShadoW DaemoN
offline
Опыт:
37,078Активность: |
O'reely? А 0.125 - многовато, тем более в том же поллед вейте используется слип с параметром 0.1 Я так понимаю, что периоды меньше 0.0125 некорректно высчитываются. Но, в принципе, меньшие значения не нужны. PolledWait неточная функция, в основном из-за цикла со слипами, и точность зависит от нагруженности в данный момент времени. |
15.03.2008, 17:04 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
если бы TriggerSleepAction мог отсчитывать по 0,0125 то можно было бы плавное движение юнита делать просто в циклах |
15.03.2008, 17:10 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
Jon, в циклах то он и не работает нормально.. Вот выписать в триггер последовательность действий ("раскрыть" цикл) вот тогда мб и будет что надо
|
15.03.2008, 17:12 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
FellGuard а вот и нет
|
15.03.2008, 17:17 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
FellGuard
Losyash
offline
Опыт:
39,547Активность: |
очень убедительно выглядит заявление а вот и нет.. ну да ладно, с нетерпением жду конечное минимальное значение корректно выполняющегося вэйта ^_^ + двигать юнита это тебе не семечки лузгать. Вот попробуй прибавлять к интегеру по единичке на итерации и посчитай, за сколько реальных секунд, например, при 0.0125 таймауте инетегер примет значение 240 со стартового нуля) отставание думаю посчитать несложно.. |
15.03.2008, 17:21 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
J
expert
offline
Опыт:
48,447Активность: |
Цитата:
отставаниье? да в ~10 раз будет отстовать больше чем нужно... чет какието вопросы детские, давно пора знатьчто ваит неработает меньше 0,1, а точнее 0,125 |
|
15.03.2008, 17:25 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|