Eu tenho um servidor web que lê grandes arquivos binários (vários megabytes) em matrizes de bytes. O servidor pode estar lendo vários arquivos ao mesmo tempo (solicitações de página diferentes), por isso estou procurando a maneira mais otimizada de fazer isso sem sobrecarregar demais a CPU. O código abaixo é bom o suficiente?
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)
.