La compréhension des Flux et leur durée de vie (Chasse d'eau, Disposer, à Proximité)

Remarque: j'ai lu les deux questions suivantes: les

Pouvez-vous expliquer le concept de cours d'eau?

C# à l'aide de flux de

Je code en C#

  1. Dans presque tous les exemples de code qui utilisent des ruisseaux, des .Dispose(), .Flush(), .Close() sont presque toujours appelé.
    • À la notion de flux, de quoi s'accomplir?
    • Si je n'ai pas de disposer d'un flux que j'ai stocké dans une variable, ma demande est une fuite quelque part?
    • Pourquoi dois-je appeler l'une de ces fonctions? J'ai vu des exemples de code qui ne font pas cela et toujours faire le travail (sans apparente rupture)

Je suis actuellement à la construction d'une classe dans mon application qui contient une méthode primaire (appelons cela GetStream()) qui renvoie un flux de données via myWebRequest.GetResponse().GetResponseStream()

La principale méthode GetStream() renvoie une Stream de l'objet qui peut être utilisée pour toute opération qui requiert un flux (StreamReader, Bitmap (), etc.).

Est-il un moyen d'avoir le flux Éliminés automatiquement après sa dernière utilisation (garbage collector?) sans forcer quelqu'un qui appelle .GetStream() manuellement en disposer?

Comme vous pouvez sans doute dire, mes questions sont vagues et générales. Ma compréhension de flux n'est pas solide, de sorte que tous les liens utiles articles qui offrent un regard plus en profondeur les cours d'eau que DONC, la question peut offrir serait appréciée.

InformationsquelleAutor Omar | 2009-12-08