আমার একটি ওয়েব সার্ভার রয়েছে যা বড় বাইনারি ফাইলগুলি (বেশ কয়েকটি মেগাবাইট) বাইট অ্যারেতে পড়বে। সার্ভার একই সাথে বেশ কয়েকটি ফাইল পড়তে পারে (বিভিন্ন পৃষ্ঠার অনুরোধগুলি), তাই আমি সিপিইউকে অতিরিক্ত পরিমাণে কর না দিয়ে এটি করার জন্য সবচেয়ে অনুকূলিত উপায়টি খুঁজছি। নীচের কোডটি কি যথেষ্ট ভাল?
public byte[] FileToByteArray(string fileName)
{
byte[] buff = null;
FileStream fs = new FileStream(fileName,
FileMode.Open,
FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
long numBytes = new FileInfo(fileName).Length;
buff = br.ReadBytes((int) numBytes);
return buff;
}
byte[] buff = File.ReadAllBytes(fileName)
।