Определить, когда компонент больше не используется
Я написал компонент (JPanel), который используется в более крупном проекте, который я не контролирую. Мой компонент может быть создан и закрыт по желанию пользователя, но я не получаю уведомление, когда он собирается закрыться. Проблема в том, что я подписываюсь на некоторые события:
Toolkit.getDefaultToolkit().addAWTEventListener(this, AWTEvent.WINDOW_EVENT_MASK);
В идеале я хотел бы отменить регистрацию тех событий, когда мой компонент больше не используется.
Вопрос 1) Я предполагаю, что мой компонент не получит GC, пока он не отписался от инструментария - это правильно?
Вопрос 2) Есть ли способ проверить, не используется ли мой компонент? (быть уведомленным было бы хорошо, но опрос мог бы быть в порядке)