Table des matières:
Définition - Que signifie utiliser la déclaration?
Une instruction using, en C #, est une instruction qui contient le mot clé "using" et fournit la syntaxe pour spécifier la portée de l'utilisation d'un objet ressource.
L'instruction using est utile pour les objets dont la durée de vie se situe dans la méthode ou le bloc dans lequel ils sont créés. Cette instruction réduit le code dans lequel les opérations gourmandes en ressources sont effectuées en fournissant une syntaxe plus simple et en éliminant le besoin d'appels multiples pour libérer les ressources à la fin de leur étendue. Parce qu'elle simplifie le code nécessaire pour créer, nettoyer et gérer une erreur lors de l'utilisation de l'objet ressource, l'instruction using économise du temps et des efforts de développement.
Techopedia explique l'utilisation de Statement
Le framework .NET est conçu avec une fonction de gestion automatique de la mémoire par laquelle la mémoire allouée à un objet est libérée en mode non déterministe chaque fois que Common Language Runtime décide d'effectuer un garbage collection (GC). Cependant, les ressources non gérées telles que les descripteurs de fichiers, les connexions réseau, etc., doivent être libérées le plus rapidement possible. L'instruction using permet au développeur de spécifier l'instant auquel ces ressources limitées doivent être libérées.
L'instruction using prend un paramètre, une ressource qui est représentée par une classe ou une structure qui implémente l'interface System.IDisposable. La seule méthode qui doit être implémentée via l'interface est «Dispose», qui peut inclure le code nécessaire pour nettoyer la ressource. Si cette méthode n'est pas appelée, le GC se charge automatiquement de l'élimination.
Par exemple, l'instruction using peut être utilisée pour ouvrir un flux de fichiers en créant un objet de type System.IO.FileStream, qui peut être utilisé dans le cadre du bloc de code de l'instruction using.
Le compilateur C # traduit le code de l'instruction using en trois sections dans Microsoft Intermediate Language:
- Acquisition de la ressource dans la section d'allocation de mémoire de la ressource
- Utilisation de la ressource enfermée dans un bloc "try"
- Suppression de la ressource en la libérant (appel de la méthode "Dispose" de l'objet ressource) dans le bloc "finalement"
Cette définition a été écrite dans le contexte de C #