awesomesk1ll
0x003E4946
offline
Опыт:
18,853Активность: |
Нагрузка/утечки и подобное
вопрос: нужно ли дестроить такой триггер в случае если не планируется его запуск? и даст ли это выгоду в "производительности" ?
call SetTerrainType(14464.00,-11008,t0,-1,1,1) работает куда выгоднее чем call SetTerrainTypeBJ( Location(14464.00,-11008), 'Isnw', -1, 1, 1 ) ?? и еще - такие Location по координатам - они оставляют утечки?
Есть ли смысл: поудалять области и заменить их на "ордер по координатам" и подобное. Большой ли прирост даст? Если играть около 3-4ч то потом "выходит" из игры около 20-30 сек. (т.е игра забивает память получается.. Где в первую очередь копать? нужен совет) В основном всё на GUI сделано. Отредактировано awesomesk1ll, 07.09.2014 в 10:28. |
07.09.2014, 10:22 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Tobi123
offline
Опыт:
7,826Активность: |
Вставьте в карту, и следите за количеством хендлов. Это и есть утечки. |
07.09.2014, 10:31 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
awesomesk1ll
0x003E4946
offline
Опыт:
18,853Активность: |
Tobi123, Это не совсем ответ на мой вопрос, т.к про систему хендлов знал. Не совсем понимаю как найти ей применение в моём случае.
У меня много триггеров - чтоб дёргать все туда сюда и изучать работу каждого по отдельности. На момент загрузки карты показывает 4000~к хендлов, затем в течении 20-30 сек добавляется 1к (начинается игра и т.д) Далее понемногу счётчик растёт и растёт.. (получается на периодических триггерах..) (не зависимо от того играю я или нет, т.е утечка получается находится где-то в периодических триггах) Мой вопрос скорее о том - что их вызывает в первую очередь (у нубов - коим я являюсь =р).
Вот скрин периодика - думаю что в нём кроютсо утечки в основном. Ах да, на 1ый вопрос это вообще ни как не ответ. |
07.09.2014, 10:47 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hate
конь вакуумный
offline
Опыт:
43,117Активность: |
сам по себе гуи утечен, ибо использует бж функции, где не удаляются объекты.
и зачем столько кастом скрипта? проще уже сразу на жассе писать все |
07.09.2014, 11:24 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Tobi123
offline
Опыт:
7,826Активность: |
Если карта - фулл гуи, она будет утечна. Надо переписывать на jass. Или нужно оптимизировать этот гуи, выпиливая бж функции, и делая координаты вместо точек. |
07.09.2014, 11:34 | #5
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
awesomesk1ll
0x003E4946
offline
Опыт:
18,853Активность: |
За 4 часа простоя счётчик хендлов вырос до 35000~ (и так далее).
Какие функции нужно заменить? как я понимаю тут: или тут i65.fastpic.ru/big/2014/0907/e4/7d10baefad3953a6f942ba4afaa926e4... или тут i63.fastpic.ru/big/2014/0907/df/b1bd3e839d5d0b2a59506bc842958fdf... или тут i67.fastpic.ru/big/2014/0907/d9/0931c8fcb02e26b895f394af0a3b64d9... Вроде это все присутствующие в карте периодики и утечка(и) кроется среди них. Отредактировано awesomesk1ll, 07.09.2014 в 15:34. |
07.09.2014, 15:26 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
quq_CCCP
Я белый и пушистый!
offline
Опыт:
94,266Активность: |
awesomesk1ll, все что требует или возвращает Loacation (точка), это самое основное что создаёт утечки в гуи... |
07.09.2014, 15:28 | #7
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
16GB
GhostOne User
offline
Опыт:
60,317Активность: |
|
07.09.2014, 15:51 | #8
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
подключи ALL.j anti-leak library и мамка будет довольна |
07.09.2014, 17:28 | #9
+2/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
awesomesk1ll
0x003E4946
offline
Опыт:
18,853Активность: |
ScorpioT1000:
Линк битый (который на этом сайте есть - ALL.j - автоматическое устранение утечек от использования GUI триггеров) и мамка этим крайне недовольна. упд: Скачал тут www.c-sharks.ru/forum/index.php?topic=213.0 Вот такая проблема О_о: Плюс гемор с включением выключением флага (её работы) Отредактировано awesomesk1ll, 07.09.2014 в 19:43. |
07.09.2014, 19:24 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
16GB
GhostOne User
offline
Опыт:
60,317Активность: |
перепиши лучше мультибоард функции и чекни, мб этого достаточно будет. |
07.09.2014, 20:03 | #11
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
awesomesk1ll
0x003E4946
offline
Опыт:
18,853Активность: |
16GB,
Включением выключением всё же определил что основная утечка от этого триггера (от других нет утечки): Проблему решил так: Меню Паузы - Set the text for (Last created multiboard) item in column 2, row 4 to (тут текст) заменил на Custom script: call MultiboardSetItemValue(mbi, (тут текст)) В начало триггера добавил:
Custom script: local multiboarditem mbi = MultiboardGetItem(GetLastCreatedMultiboard(), 3, 1) А в конце:
Custom script: call MultiboardReleaseItem(mbi) Custom script: set mbi = null Тем кто искренне пытался помочь спасибо. Надеюсь что мамка ScorpioT1000 будет довольна. Отредактировано awesomesk1ll, 07.09.2014 в 22:14. |
07.09.2014, 20:15 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|