Мне уже лет 5 твердят,что команда "wait" утечна. Объясните раз и навсегда,чем заменить команду ждать? Спасибо"

SсRealm, я скопировал PolledWait() и исправил немного, можешь скопировать и вызывать когда нужно. (Если я правильно исправил)
//Исправленный PolledWait()
    nothing Wait ( real duration ){ 
        timer t
        real timeRemaining
        if (duration > 0) {
            t = CreateTimer()
            TimerStart(t, duration, false, null)
            loop{
                timeRemaining = TimerGetRemaining(t)
                exitwhen timeRemaining <= 0
                if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) {
                    TriggerSleepAction(0.1 * timeRemaining)
                }else{
                    TriggerSleepAction(bj_POLLED_WAIT_INTERVAL)
                }
            }
            DestroyTimer(t)
            t = null
        }
    }
Это cJASS, если что
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
15
Тебе действительно за эти 5 лет никто не рассказал о таймерах?
28
Мне уже лет 5 твердят,что команда "wait" утечна.
PolledWait не обнуляет переменную таймера, вот и всё. Это не утечка, но хендл не освобождается.
21
Разве она утечна? Никогда о подобном не слышал. Везде говорится лишь что она не подходит для реализации манипуляций с высоким периодом.
Открой PolledWait (Или как там ее) в JNGP и все поймешь с первого взгляда.
21
GetLocalPlayer:
Тебе действительно за эти 5 лет никто не рассказал о таймерах?
Нет Ни кто(
20
Raised, тоесть PolledWait() можно даже использовать в способностях и все будет хорошо работать?
21
PolledWait не обнуляет переменную таймера
Если это утверждение верно, то да, но только с глобальными таймерами.
38
Можно смело юзать чистый TriggerSleepAction для всяких кветов или сценариев, но он продолжает работать в паузе игры, т.е. лучше реализовать свой PolledWait, устранив утечку. Для точности ниже 0.27 сек (зависит от машины) нужно юзать таймеры
21
Дайте мне ссылку как использовать таймеры и на PolledWait?
38
могу вот это предложить, для общего образования xgm.guru/p/wc3/code-flow-and-data-access-thread
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.