.NET: Способ определить, есть ли у объекта какие-либо ссылки на него?

В. Есть ли способ узнать, имеет ли объект какие-либо «сильные ссылки» на него?


Рэймонд Чен намекнул, что решение может быть возможным :

Вы хотите знать, является ли ссылка Счетчик равен нулю или не равен нулю. Для этого, используйте WeakReference.

Примечания

  • У меня есть « слабая ссылка » на объект (используется WeakReference ). Если бы у меня была сильная ссылка , ответ был бы немедленно: «Да. У вас есть сильная ссылка на объект».
  • сборщик мусора не предоставляет ответов
  • свойство IsAlive может только сказать вам, был ли объект собран , или нет. Нет, если есть сильные ссылки на это или нет. (Объект без ссылок не может быть собран - GC просто еще не дошел до него)
  • объекты в.

    Что я делаю не так?

14
задан Philipp M 21 January 2014 в 09:55
поделиться

2 ответа

Добавьте атрибут debug = "true" в элемент . , я предполагаю, что именно отсутствующий элемент вызывает проблемы. Вы всегда должны включать элемент регистратора .

3
ответ дан 1 December 2019 в 16:44
поделиться

Похоже, это была странная ошибка отладки. Сейчас не воспроизводится. Мои извинения.

1
ответ дан 1 December 2019 в 16:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: