Я тестирую приложение.Вот мой сценарий
1) Из моего рабочего потока я показываю индикатор выполнения (я передаю сообщение обработчику, созданному в пользовательском интерфейсе).Я жду в своем рабочем потоке, пока не будет вызван pd.show (), затем возобновляю мой рабочий поток
2) выполняю операцию в рабочем потоке
3) закрывает диалоговое окно прогресса.Опять же, я передаю сообщение обработчику, созданному в пользовательском интерфейсе, и жду рабочего потока, пока pd.dismiss не будет назван
. Для стресс-теста я поместил это в цикл итерации 10000.На моем Nexus все работает в основном нормально.На вкладке galaxy и на всех устройствах Motorola примерно через 50 итераций мое приложение принудительно закрывается.Я вижу, что BinderThreads медленно увеличивается до 16 и перестает расти (я знаю, что 16 - это максимальный предел для BinderThreads).На Nexus One это вызывает проблемы позже.Я получил это в logcat of galaxy tab и moto devices
W/WindowManager( 1363): OutOfResourcesException creating surface
I/WindowManager( 1363): Out of memory for surface! Looking for leaks...
W/WindowManager( 1363): No leaked surfaces; killing applicatons!
edit: после закрытия диалогового окна прогресса я устанавливаю его в null, чтобы убедиться, что он ничего не держит.
Есть идеи?
Спасибо,
Veeresh