Argomenti C# importanti

Liberare le risorse con IDisposable e using in C#

In questa lezione userai la dichiarazione using per assicurarti che le risorse vengano sempre liberate al momento giusto, anche quando si verifica un errore.

Introduzione

In .NET la memoria viene recuperata automaticamente dal garbage collector, ma risorse come file, connessioni di rete o al database vanno liberate appena non servono più. Questi oggetti implementano l'interfaccia IDisposable, con il metodo Dispose per liberare la risorsa.

La dichiarazione using var writer garantisce che il metodo Dispose di writer venga chiamato automaticamente quando il programma esce dall'ambito in cui si trova, anche se nel frattempo si verifica un'eccezione. Così non devi scrivere un blocco try/finally per ripulire le risorse.

Esempio C# eseguibile

C#
Esegui il codice →
Program.cs
using System;
using System.IO;

class Program
{
    static void Main()
    {
        using var writer = new StringWriter();
        writer.Write("resource-safe output");
        Console.WriteLine(writer.ToString());
    }
}
Risultato dell'esecuzione
resource-safe output

Esercitati con il debugger

Metti un breakpoint su un'assegnazione o una condizione importante, fai clic su Debug ed esamina i valori locali prima di passare alla riga successiva.

Esercitati con una sfida

Usa ciò che questa lezione spiega per risolvere un problema reale. Ogni sfida gira nel browser, con test immediati e una revisione dell'IA.

Tutte le sfide