Как найти, где объект создан в flex / actionscript 3? - PullRequest
1 голос
/ 22 июня 2009

В моем проекте я заметил 20-40% процессорного времени, когда мое приложение простаивает.
В отладчике, когда я делаю паузу, я всегда получаю flex.utils.Timer / tick.
Этот таймер имеет задержку 30 мс между «тиками»

Я не создал этот таймер ... так что это, вероятно, компонент, который я добавил

К сожалению, будет трудно удалить все компоненты до тех пор, пока не будет найден "один" ..
Да, я должен был заметить использование процессора раньше!
и да, я сделаю это, если не найду другого решения

Я, конечно, использую некоторые компоненты, не имея их источников ...

Мои вопросы:
* Как я могу найти виновный компонент?
* Я безуспешно пытался найти его с помощью Kap Inspector ... какие-нибудь советы для Kap Inspector?
Есть ли еще один отличный инструмент для отслеживания создания объектов?

Спасибо за вашу помощь

Ответы [ 2 ]

0 голосов
/ 23 июня 2009

Когда вы устанавливаете точку останова, в перспективе Flex Debugger найдите вкладку / представление Variables. Оттуда, с установленной точкой останова, вы сможете увидеть все переменные, находящиеся в данный момент в локальной области видимости (то есть локальные по отношению к обработчику событий таймера). Переменная event будет содержать информацию о самом таймере - например, в event.target - а переменная this сообщит вам, где определен обработчик таймера.

Оттуда вы можете вернуться к трассировке стека, используя вкладку / представление «Отладка» (с установленной точкой останова), чтобы получить представление о том, где мог быть создан экземпляр объекта Timer. Если это не поможет, вы можете загрузить пробную версию Flex Builder Professional здесь:

http://www.adobe.com/cfusion/entitlement/index.cfm?e=flexbuilder3

... и попробуйте встроенный профилировщик. Надеюсь, что это поможет вам в полезном направлении!

0 голосов
/ 22 июня 2009

Понятия не имею о Flex, но если у вас проблемы с процессором, проверьте это:

http://www.gskinner.com/blog/archives/2009/05/idle_cpu_usage.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...