Что и как много накладных расходов происходит, когда я использую класс Reference? - PullRequest
1 голос
/ 28 ноября 2009

Я видел поток демона, работающий всякий раз, когда мы создаем ссылочный объект, используя любой класс Reference, такой как

 WeakReference, 
 FinalReference, 
 SoftReference, 
 PhantomReference,
 Referemce

И если у нас есть иерархическая структура потока, то на каждом уровне запускается дополнительный поток демона.

Ответы [ 2 ]

2 голосов
/ 28 ноября 2009

Я ожидаю, что накладные расходы будут очень малы для большинства приложений. Если вы не знаете, что это проблема, я бы об этом не беспокоился. Я никогда не видел, чтобы ссылки появлялись в профилировщике как проблема, и я использую разные профилировщики в течение 10 лет.

1 голос
/ 28 ноября 2009

Единственный способ, с помощью которого я вижу, что это становится проблемой, - это если число потоков увеличивается до двух цифр и более.

Очень грубо говоря:

  • 10 тем будут рядом с незаметными
  • 100 должно быть в порядке, так как они в основном просто ждут и жуют немного памяти каждый
  • 1000 доставит вашей системе головную боль, потому что эти ресурсы будут отсутствовать в других местах
  • 10000 поставит вашу систему на колени, если не откровенно убьет ее.
...