Junior — Middle
Explique la finalité et l'utilisation de l'interface IDisposable dans .NET
sobes.tech IA
Réponse de l'IA
L'interface IDisposable dans .NET est conçue pour libérer les ressources non managées, telles que les fichiers, les connexions réseau, les descripteurs, etc. Elle contient une méthode — Dispose(), qui est appelée pour libérer explicitement les ressources.
L'utilisation de IDisposable permet de contrôler le moment de la libération des ressources, ce qui est important pour éviter les fuites de mémoire et les blocages.
Exemple d'utilisation :
class ResourceHolder : IDisposable
{
private FileStream fileStream;
public ResourceHolder(string filePath)
{
fileStream = new FileStream(filePath, FileMode.Open);
}
public void Dispose()
{
fileStream?.Dispose();
}
}
// Utilisation avec l'instruction using
using (var resource = new ResourceHolder("file.txt"))
{
// Travailler avec la ressource
}
// Après la sortie du using, Dispose() est appelé automatiquement
Ainsi, IDisposable aide à gérer le cycle de vie des ressources et garantit leur libération correcte.