Domanda

Ho visto che c'è un thread demone in esecuzione ogni volta che creiamo un oggetto referenziato usando qualsiasi classe di riferimento come

 WeakReference, 
 FinalReference, 
 SoftReference, 
 PhantomReference,
 Referemce

E se abbiamo una struttura di thread gerarchica, ad ogni livello c'è un thread daemon extra avviato.

È stato utile?

Soluzione

Mi aspetto che l'overhead sia molto piccolo per la maggior parte delle applicazioni. Se non sai che è un problema, non me ne preoccuperei. Non ho mai visto i riferimenti apparire come un problema in un profiler e utilizzo profili diversi da 10 anni.

Altri suggerimenti

L'unico modo in cui vedo questo diventare un problema è se il tuo numero di thread cresce bene in 2 cifre e più.

Molto approssimativamente parlando:

  • 10 thread saranno accanto a impercettibili
  • 100 dovrebbe essere OK, dato che sono quasi tutti in attesa e masticano un po 'di memoria ciascuno
  • 1000 causerà mal di testa al tuo sistema perché quelle risorse mancheranno altrove
  • 10000 metterà in ginocchio il tuo sistema, se non addirittura lo ucciderai.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top