假设以下方法在 .net 4 应用程序中被不同的线程调用了数千次。如何处理这种情况最好?请注意,瓶颈在于磁盘,但我希望 WriteFile() 方法能够快速返回。
数据可能高达几 MB。我们需要考虑线程池、TPL 或类似的方式吗?
public void WriteFile(string FileName, MemoryStream Data)
{
try
{
using (FileStream DiskFile = File.OpenWrite(FileName))
{
Data.WriteTo(DiskFile);
DiskFile.Flush();
DiskFile.Close();
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}