NCrashed
offline
Опыт:
13,553Активность: |
EnumDestructablesInRect, утечки.
Код:
По моим наблюдениям эта функция создает утечки, кол-во которых ~ числу пикнутых дестров. Я проверял через схему: создал таймер, напечатал номер его ячейки, удалил таймер. В итоге функция забивает ячейки нендлами или реально создает утечки? Если это утечки, как их устранить или смягчить, или есть альтернатива? |
15.02.2009, 01:28 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Vampirrr
O_o
offline
Опыт:
19,286Активность: |
NCrashed, эта нативка не вызывает утечек, только если ты: не удаляешь что-либо, создающееся в actionFunc, или не удаляешь рект (если ты сам его создаешь)
|
15.02.2009, 04:56 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hellfim
Новичок
offline
Опыт:
79,880Активность: |
NCrashed, удаляй ректы и булэкспры уничтожай, сам недопускай утечек. В этой функции утечек нет.
|
15.02.2009, 10:54 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NCrashed
offline
Опыт:
13,553Активность: |
Она создает утечки, если остаются переменные, которые хранят хотя бы один из пикнутых дестров. В переменную не сохраняю - нет утечек, сохраняю и пошли по 150 занятых хендлов за пик |
15.02.2009, 14:01 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hellfim
Новичок
offline
Опыт:
79,880Активность: |
NCrashed, ты не думал что из переменной стоит убирать ссылку?
|
15.02.2009, 14:16 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NCrashed
offline
Опыт:
13,553Активность: |
После использования я ссылку приравниваю к null. Но утечки все равно остаются. |
15.02.2009, 14:46 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
Цитата:
а тебе в голову не приходило что туда могло что-то другое попать из параллельного потока? ScorpioT1000 добавил: хотя я сам неуверен ибо не знаю тамошней фрагментации |
|
15.02.2009, 14:57 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NCrashed
offline
Опыт:
13,553Активность: |
Параллейных потоков нет, так как это наработка, ничего кроме него нет) Интересное наблюдение: если сохранять не сам дестр, а номер ячейки памяти, вар ожидает 4 секунды перевода номера в хендл, не дождавшись удаляет утечки, потом можно уже переводить номер в дестр. Но я не могу столько ждать, может есть еще способы обмануть движок? |
15.02.2009, 15:24 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
offline
Опыт: отключен
|
NCrashed, в варкрафте я имею ввиду
|
15.02.2009, 15:31 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NCrashed
offline
Опыт:
13,553Активность: |
ScorpioT1000, все указывает на эту функцию. Без нее утечек не происходит, и кол-во утечек равно кол-ву пикнутых декораций и как я уже сказал:
Цитата:
|
|
15.02.2009, 15:37 | #10
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
adic3x
offline
Опыт:
107,539Активность: |
мб код покажешь, ведь не ексрасенсы сидят тут завсегда) |
15.02.2009, 17:09 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
NCrashed
offline
Опыт:
13,553Активность: |
Собственно карта: нестандартный способ добычи дерева. С 1 лесопилкой удалось справиться с помощью этой хитрости, а вот уже с двумя идут утечки( |
15.02.2009, 20:36 | #12
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|