Всем привет! Обязательно ли обнулять локальные переменные внутри функции?
Пример:
function Kolyan takes nothing returns nothing
local unit u = GetTriggerUnit()
local group g = CreateGroup()
local effect e
Любые действия
set e = null
set g = null
set u = null
endfunction
function Kolyan takes nothing returns nothing
local unit u = GetTriggerUnit()
local group g = CreateGroup()
local effect e
Любые действия
set e = null
set g = null
set u = null
endfunction
и второй пример без обнуления:
function Kolyan takes nothing returns nothing
local unit u = GetTriggerUnit()
local group g = CreateGroup()
local effect e
Любые действия
Без обнуления
endfunction
local unit u = GetTriggerUnit()
local group g = CreateGroup()
local effect e
Любые действия
Без обнуления
endfunction
Принятый ответ
rsfghd:
посему же он не точен он помоему берет все объекты типа юнит, декор, эффек, предметы(не проверял), переменные, и помоему даже способности и это происходит при стартеЮзай счётчик хэндлов для подобных исследований. Запусти таймер с периодичностью 0.10 сек на эту функцию и посмотри как растёт счётчик. А потом попробуй удалять и обнулять переменные - ощутимая разница, а сам счётчик говорит о "пороге вылета", то бишь чем больше показывает счётчик тем хуже, тем больше игра лагать начинает вплоть до вылета (искл. спавн постоянных юзабельных объектов). Он не точен, это ясное дело, но если что-то без конца утекает он даст знать, как в данном случае
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован Берги
Отредактирован goodlyhero
Отредактирован rsfghd
Он может выдавать кривые значения и уйти вовсе в минус. На него полагаться порой глупо, но новички пусть юзают пока не продвинутся