Logo it.boatexistence.com

Perché il metodo di finalizzazione dovrebbe essere evitato?

Sommario:

Perché il metodo di finalizzazione dovrebbe essere evitato?
Perché il metodo di finalizzazione dovrebbe essere evitato?

Video: Perché il metodo di finalizzazione dovrebbe essere evitato?

Video: Perché il metodo di finalizzazione dovrebbe essere evitato?
Video: Stai attento a non diventare la spazzatura degli altri | Filippo Ongaro 2024, Maggio
Anonim

Anche nel nostro programma non è in grado di eseguire il metodo finalize per tutti e 3 i thread. "Questo metodo è intrinsecamente pericoloso Può comportare la chiamata di finalizzatori su oggetti attivi mentre altri thread manipolano contemporaneamente quegli oggetti, con conseguente comportamento irregolare o deadlock. "

Perché il metodo di finalizzazione dovrebbe essere evitato C?

Il metodo Finalize di un oggetto non dovrebbe chiamare un metodo su nessun oggetto diverso da quello della sua classe base. Questo perché gli altri oggetti chiamati potrebbero essere raccolti contemporaneamente all'oggetto chiamante, come nel caso di un arresto di Common Language Runtime.

Dovremmo sovrascrivere il metodo Finalize?

Il metodo finailze deve essere sovrascritto affinché un oggetto includa il codice di pulizia o elimini le risorse di sistema che dovrebbe essere eseguito prima che l'oggetto venga raccolto.

Cosa succede se viene generata un'eccezione dal metodo Finalize?

Se un'eccezione non rilevata viene generata dal metodo finalize, l'eccezione viene ignorata e la finalizzazione di quell'oggetto termina. … Qualsiasi eccezione generata dal metodo finalize provoca l'interruzione della finalizzazione di questo oggetto, ma viene altrimenti ignorata.

Qual è lo scopo del metodo finalizzato?

Il metodo finalize della classe Object è un metodo che il Garbage Collector chiama sempre appena prima dell'eliminazione/distruzione dell'oggetto idoneo per Garbage Collection, in modo da eseguire l'attività di pulizia.

Consigliato: