0Pricing
Mojo Academy · Lezione

Distruzione e __del__

Esegua la pulizia al termine della vita di un valore.

Distruzione e __del__ è una lezione Mojo Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Mojo Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Mojo Academy include 4 lezioni in totale.

Parti di questa lezione non sono ancora state tradotte e vengono mostrate in inglese.

Every Value Has an End

When a value is no longer needed, its life ends and Mojo destroys it. This is your chance to clean up what it owned. 🧹

The Destructor Method

Mojo calls a special method named __del__ to destroy a value. It runs automatically when the value goes out of scope.

fn __del__(owned self):
    pass

Deterministic Timing

Mojo destroys values at a predictable point, as soon as they are last used. There is no waiting on a garbage collector.

Last Use, Not Block End

Mojo runs __del__ right after a value is last used, often before the block closes. This frees resources as early as possible.

Free What You Own

If your type holds a heap buffer, __del__ is where you release it. Doing so prevents memory from leaking over time.

You Own the Cleanup

Inside __del__ the value is owned, so you can safely tear down its resources. After this, the value no longer exists.

Often Synthesized

For simple types you write nothing. Mojo synthesizes a destructor that cleans up each field in turn, so leaks are avoided.

When to Customize It

Write your own __del__ when you manage a raw resource, like an allocation or file handle, that needs explicit release.

Runs Once, Exactly

Each value is destroyed exactly once. Moves transfer ownership so only the final holder runs __del__, avoiding double frees.

No Use After Death

Once __del__ completes, Mojo guarantees the value is gone. Its ownership rules stop you from touching freed data.

Safety Without a GC

Deterministic destruction gives you C-like control with built-in safety. Cleanup is timely, predictable, and automatic.

Quick Check

Lets check destruction.

Recap

__del__ runs when a value’s life ends, deterministically and exactly once, letting you clean up safely without a GC. 🎯

Domande Frequenti

La lezione «Distruzione e __del__» è gratuita?

Sì — il testo completo di «Distruzione e __del__» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Mojo Academy, passa a CoddyKit PRO. Il corso Mojo Academy include 4 lezioni in totale.

Cosa imparerò in «Distruzione e __del__»?

Esegua la pulizia al termine della vita di un valore. Eserciti Mojo Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Mojo Academy?

Non è richiesta alcuna esperienza precedente. Mojo Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Distruzione e __del__»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Mojo Academy?

Sì. Ogni lezione Mojo Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Semantica di copia e spostamento
  2. Il metodo __copyinit__
  3. Il metodo __moveinit__
  4. Distruzione e __del__
← Torna a Mojo Academy