Класс MethodQueueElement является внутренним классом класса mx.core.UIComponent.
Он используется для представления вызова метода, который был поставлен в очередь вызовом callLater.
Метод callLater является частью открытого интерфейса UIComponent, поэтому либо вы вызываете его в своем коде, либо он вызывается платформой (как это происходит в UIComponent.setFocus, например,)
Чтобы освободить все экземпляры MethodQueueElement, UIComponent заменяет текущий массив MethodQueueElements новым (пустым). (в методе callLaterDispatcher2) Таким образом, единственный способ устранить утечку памяти - предотвратить вызов callLaterDispatcher2.
Чтобы отладить это, вы можете начать устанавливать точки останова (пока ваше приложение работает) в методах callLater (здесь создаются ваши экземпляры, так что как-то он вызывается все время, посмотрите на трассировку стека здесь!), CallLaterDispatcher2 ( я предполагаю, что он не будет вызван), и проверим, является ли UIComponentGlobals.callLaterSuspendCount! = 0, что может быть причиной того, что callLaterDispatcher2 не вызывается.
Если последнее имеет место, я подозреваю, что у вас есть подростки или что-то еще, вызывающее UIComponent.suspendBackgroundProcessing, но затем не вызывающее resumeBackgroundProcessing (из-за исключительной ситуации, завершающей код перед достижением вызова resumeBackgroundProcessing, например.)