Чтение и запись в файл одновременно

для приложения, которое использует File как своего рода глобальное хранилище для резервирования устройств в фирме, мне нужен способ чтения и записи в файл (или блокировки файла, чтения из него, записи в него и разблокирования его). Небольшой фрагмент кода покажет, что я имею в виду:

FileStream in = new FileStream("storage.bin", FileMode.Open);
//read the file
in.Close();

//!!!!!
//here is the critical section since between reading and writing, there shouldnt
//be a way for another process to access and lock the file, but there is the chance
//because the in stream is closed
//!!!!!
FileStream out = new FileStream("storage.bin", FileMode.Create);
//write data to file
out.Close();

это должно получить что-то вроде этого

LockFile("storage.bin");
//read from it...
//OVERwrite it....
UnlockFile("storage.bin");

метод должен быть абсолютно безопасным, поскольку программа должна работать на 2000 устройствах одновременно

Ответы на вопрос(5)

Ваш ответ на вопрос