FileStream in .NET entsorgenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 FileStream in .NET entsorgen

Post by Anonymous »

Ich muss eine Liste von FileStream-Objekten mit der DoSomethingWithFileStreams-Methode wie unten verarbeiten. Wenn ich Code wie diesen schreibe, befürchte ich, dass die Liste der FileStream verworfen wird, bevor sie in der DoSomethingWithFileStreams-Methode verarbeitet werden.

Code: Select all

            List fileStreams = new List();
foreach (var attachmentPath in attachmentPaths)
{
using (FileStream fileStream = new FileStream(
attachmentPath,
FileMode.Open,
FileAccess.Read,
FileShare.Read))
{
fileStreams.Add(fileStream);
}
}

DoSomethingWithFileStreams(fileStreams);
Soll ich wie unten schreiben? In dieser neuen Version verwende ich nicht die using-Anweisung und entsorge FileStream nicht mit der Dispose-Methode.

Code: Select all

            List fileStreams = new List();
foreach (var attachmentPath in attachmentPaths)
{
FileStream fileStream = new FileStream(
attachmentPath,
FileMode.Open,
FileAccess.Read,
FileShare.Read);

fileStreams.Add(fileStream);

}

DoSomethingWithFileStreams(fileStreams);

foreach (var ifileStream in fileStreams)
{
ifileStream.Dispose();
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post