SWT - Как отлаживать "Нет больше ручек"
Время от времени меня преследует "org.eclipse.swt.SWTError: Больше никаких ручек". Я уже знаю такие инструменты, как GDIView, чтобы наблюдать за количеством выделенных дескрипторов, но теперь мне интересно, есть ли лучший способ сделать это.
Доступен ли инструмент? Может быть, тот, который записывает все трассировки стека при создании дескрипторов? И что показывает новые дескрипторы между двумя точками вызова?
С уважением, Даниэль
PS: Добавлен тег windows, потому что dev встречается в основном на окнах, и достаточно было бы использовать инструмент только для windows.
2 ответа
Я узнал о Sleak, отличном инструменте для отладки SWT-ресурсов! Настоятельно рекомендуется для всех с такими же проблемами. Даже показывает изображения для изображений ресурсов!
Для меня проблема была просто в том, что новый Shell() вызывался слишком часто. Хранение оболочки как статического члена и ее повторное использование помогло. Поэтому, прежде чем применять такой инструмент, как Sleak, другие могут захотеть выполнить полнотекстовый поиск "новой оболочки" и убедиться, что у них нет той же простой причины.