Myth
The Temple
offline
Опыт:
19,141Активность: |
заменил бж функцию MultiboardSetItemValueBJ...
утечек стало в разы меньше. такой теперь вопрос:
какие функции работы с mb ещё вызывают утечки? и на какие нативки их можно заменить? Myth добавил: я так понимаю что функции set text color и set icon? |
04.03.2011, 21:08 | #21
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hanabishi
COOL STATUS
offline
Опыт: отключен
|
Myth, все, которые как-либо затрагивают элементы нативки те же, только без окончания БЖ, но в них нельзя ставить 0, для влияния на все строки/столбцы |
04.03.2011, 22:10 | #22
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Скайнет
Kicked by ZlaYa1000
offline
Опыт:
8,234Активность: |
Myth, везде, где есть mbitem. а где он есть - нужно смотреть в начинку бж функции |
04.03.2011, 22:51 | #23
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
и последний вопрос: я все не могу понять как открыть "начинку" бж функции? |
05.03.2011, 08:23 | #24
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Master_chan
Полуночный командир
offline
Опыт:
15,660Активность: |
Myth, вытащи из архива war3patch.mpq файл scripts\blizzard.j и ищи там. Ну а если стоит JNGP то проблем быть не должно. Ctrl+клик на функцию и всё. |
05.03.2011, 08:30 | #25
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
а функцию нельзя там же и переписать?
или придётся полюбому писать отдельно и вызывать вместо стандартной? я имею ввиду переписать только в рамках карты. |
05.03.2011, 14:27 | #26
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hanabishi
COOL STATUS
offline
Опыт: отключен
|
Myth, блин, модифицируй функцию и толкай в нестандартный код (только имя измени)
я тоже кстати их изменял в одной своей карте, вот код:
Hanabishi добавил: только лишь добавить обнуление хендла итема |
05.03.2011, 14:39 | #27
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
spellwerk
offline
Опыт:
4,869Активность: |
MultiboardReleaseItem решит все проблемы |
05.03.2011, 14:45 | #28
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
Hanabishi, понял что нестандартный код! хотелось решить красиво! )
только я так делаю:
((код jass
function MB_SetItemValue takes multiboard mb, integer col, integer row, string val returns nothing
local multiboarditem mbitem = MultiboardGetItem(mb, row - 1, col - 1) call MultiboardSetItemValue(mbitem, val) call MultiboardReleaseItem(mbitem) set mbitem = null endfunction )) Spy_,
поясни плз |
05.03.2011, 15:02 | #29
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hanabishi
COOL STATUS
offline
Опыт: отключен
|
Myth, это удаляется из переменной мбитем, но в борде остаётся |
05.03.2011, 15:06 | #30
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
такой тогда последний вопрос: у типа string есть область видимости? переменную надо обнулять? смотрю просто, Hanabishi, ты не обнуляешь. |
05.03.2011, 16:02 | #31
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hanabishi
COOL STATUS
offline
Опыт: отключен
|
в каком смысле область видимости? нет, string не нужно обнулять |
05.03.2011, 16:32 | #32
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
ну переменные типа инт, реал и булеан имеют её и когда выходят за её пределы, автоматически обнулятся. а вот про стринг не знал :) |
05.03.2011, 18:17 | #33
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
XyZoD
offline
Опыт:
2,073Активность: |
Не знаю как локалки могут вызывать утечки, гляньте карту близзов гранпри азерота и посмотрите обнулили ли они хотябы 1 локалку? Они наверняка знают больше любого из вас? Ещё бы C++ обнуляли бы... |
05.03.2011, 18:30 | #34
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
papapa071, близарды знают колдовство и магию :) |
05.03.2011, 18:33 | #35
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
SkiL
offline
Опыт:
9,321Активность: |
papapa071, да ты же не прав, прочитай статьи про оптимизацию. |
05.03.2011, 18:35 | #36
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
XyZoD
offline
Опыт:
2,073Активность: |
мне тут читать нечего я это знаю, подумай как движок примет переменную типа юнит или триггер? как стандартный float или int и как ты будеш обнулять их? null это вообще придумано близзами для юнитов чтобы их потом найти было нельзя по этой переменной. Вот например глобалки видимы везде и если она объявлена то она уже не удалится не как, она удалится только тогда когда выйдеш из игры, так же с локалками она автоматически удалится после выхода из функции. Если я не прав то получается и близзы тоже, получается пользователи умнее разработчиков... Отредактировано papapa071, 05.03.2011 в 18:50. |
05.03.2011, 18:43 | #37
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
papapa071, то есть ты хочешь сказать что обнулять совсем ничего не нужно и всё на ура у всех будет, а слова "утечка" - слово паразит? ) |
05.03.2011, 18:50 | #38
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
XyZoD
offline
Опыт:
2,073Активность: |
Утечка вообще слово не официальное и даже не понятно кто придумал его, для всего что нужно обнулять есть оператор Destroy |
05.03.2011, 18:52 | #39
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Myth
The Temple
offline
Опыт:
19,141Активность: |
papapa071, ну вот смотри на моём примере:
у меня были большие утечки с мультибордом... я обнулил переменную - они пропали (которые ожидалось что пропадут) ЗЫ set x = null |
05.03.2011, 18:56 | #40
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|