Ли FileStream.Dispose закрыть файл сразу?
У меня есть код, который записывает файл, сохраняя MemoryStream в FileStream с помощью MemoryStream.WriteTo (). После закрытия файла он открывается снова, чтобы прочитать некоторые metdata …
Это работает примерно в 80 – 90% случаев. Другие 20% я получаю исключение, говоря, что файл «используется другим процессом».
Does FileStream.Dispose () не освобождает ресурсы синхронно? Что-то происходит на земле Win32, о которой я не знаю? Я не вижу ничего очевидного в документации .Net.
- Что делает мой трэш диска в Windows XP?
- Как добавить тайм-аут в Console.ReadLine ()?
- Легкий способ записи содержимого Java InputStream в OutputStream
- Как создать временную папку / папку в Java?
- Почему элементы массива отформатированы как нули, когда они умножаются на 1/2 или 1/3?
- Как использовать метод readline () в Java?
- Сохранить и загрузить MemoryStream в / из файла
- Почему мой системный процесс делает диск IO?
- разница между функцией flush и close в случае файлового ввода в java
- Получить OutputStream в строку
- Java: разница между PrintStream и PrintWriter
- Использование scanf () в программах на C ++ быстрее, чем использование cin?
- Можно проверить размер и тип ввода = файл в html5
Как «сразу», насколько это возможно. Там может легко быть некоторое отставание из-за выдающихся записей , задержки в обновлении информации каталога и т. Д. Также может быть антивирусное программное обеспечение, проверяющее ваш измененный файл.
Это может быть редкий случай, когда требуется Thread.Sleep(1)
. Но чтобы быть абсолютно безопасным, вам придется поймать (любое) исключение и повторить попытку несколько раз.