Je travaille en C#, et j'ai été assez laxiste sur l'utilisation d' using
blocs de déclarer des objets qui implémentent IDisposable
, ce qui n'est apparemment toujours censé faire. Cependant, je ne vois pas un moyen facile de savoir quand je suis glisse vers le haut. Visual Studio ne semble pas indiquer de quelque manière que ce soit (suis-je raté quelque chose?). Suis-je censé aider à vérifier à chaque fois que je déclarer quoi que ce soit, et de construire progressivement un encyclopédique de la mémoire pour les objets qui sont et qui ne sont pas jetables? Me semble inutile, douloureux, et sujette à erreur.
Comment pensez - vous gérer cela?
EDIT:
En regardant les questions liées à l'encadré, j'ai trouvé une autre question qui précise qu' Dispose()
est censé être appelé par le finaliseur de l'objet, de toute façon. Donc, même si vous n'appelez jamais vous-même, il devrait éventuellement se produire, ce qui signifie que vous n'avez pas une fuite de mémoire si vous n'utilisez pas using
(qui est ce que je suppose que j'étais vraiment inquiet à propos de tout du long). Le seul inconvénient est que le garbage collector ne sais pas quelle quantité de mémoire est organisé par l'objet non gérées choses, afin de ne pas avoir une idée précise de combien de mémoire sera libérée par la collecte de l'objet. Le résultat sera moins idéal que d'habitude de la performance par le garbage collector.
En bref, c'est pas la fin du monde si je manque une using
. Je souhaite juste que quelque chose serait de générer au moins un avertissement pour elle.
(Hors-sujet: pourquoi n'est-il pas spécial markdown pour la liaison à une autre question?)
EDIT:
Ok, très bien, arrêter la recherche. C'est super duper tout tiré dramatique-tamianiveau important d'appeler Dispose()
ou nous allons tous mourir.
Maintenant. Étant donné que, pourquoi est-il si facile de l'enfer, pourquoi est-il encore autorisé à faire mal? Vous devez sortir de votre façon de faire les choses. Faire comme tout le reste des résultats dans armageddon (apparemment). Autant pour l'encapsulation, hein?
[Tiges off, dégoûté]