0

200 人の異なるユーザーが 1 つのファイルにアクセスするために使用するコードを開発しています。

多数のユーザーが同時にアクセスしているファイルを読み取るためのベストプラクティスは何ですか

FileStream stream = File.OpenRead(FileName);
 byte[] contents = new byte[stream.Length];
 stream.Read(contents, 0, (int)stream.Length);
 stream.Close();

それを行うより良い方法はありますか?

4

1 に答える 1

2

オーバーロード メソッドを使用し、ファイル共有を明示的に指定する必要があります (そうしないとUnauthorizedAccess、複数のストリームを開くときに例外が発生します)。

var stream = File.Open(path, FileMode.Open, FileAccess.Read, FileShare.Read);

読み取り専用である限り、これは正常に機能するはずです。

于 2013-09-27T10:26:11.920 に答える