Ли FileStream.Dispose закрыть файл сразу?

У меня есть код, который записывает файл, сохраняя MemoryStream в FileStream с помощью MemoryStream.WriteTo (). После закрытия файла он открывается снова, чтобы прочитать некоторые metdata …

Это работает примерно в 80 – 90% случаев. Другие 20% я получаю исключение, говоря, что файл «используется другим процессом».

Does FileStream.Dispose () не освобождает ресурсы синхронно? Что-то происходит на земле Win32, о которой я не знаю? Я не вижу ничего очевидного в документации .Net.

Как «сразу», насколько это возможно. Там может легко быть некоторое отставание из-за выдающихся записей , задержки в обновлении информации каталога и т. Д. Также может быть антивирусное программное обеспечение, проверяющее ваш измененный файл.

Это может быть редкий случай, когда требуется Thread.Sleep(1) . Но чтобы быть абсолютно безопасным, вам придется поймать (любое) исключение и повторить попытку несколько раз.

  • Чтение двоичного файла в структуру
  • Отправка того же, но измененного объекта поверх ObjectOutputStream
  • Linux: Есть ли что-то похожее на «верх» для ввода-вывода?
  • Как я могу использовать файл в команде и перенаправить вывод в тот же файл без его усечения?
  • читать полный файл без использования цикла в java
  • Какова мотивация присвоения Scala для оценки Unit вместо присвоенного значения?
  • console.writeline и System.out.println
  • Написание двоичного файла на C ++ очень быстро
  • Как распаковать gzipped данные в массив байтов?
  • Как читать локальный текстовый файл?
  • Как читать все файлы в папке с Java?
  • Interesting Posts

    Событие Backbone.js после завершения view.render ()

    Как удаленный рабочий стол компьютера через Интернет

    Как разрешить java.lang.NoClassDefFoundError: javax / xml / bind / JAXBException в Java 9

    Как избежать ошибок при использовании CRTP?

    Как отключить или обойти ускорение аппаратной графики (Prism) в JavaFX

    Построение конструктора копирования в Java

    Кнопка мыши и счетчик клавиш для Windows

    org.openqa.selenium.WebDriverException: неизвестная ошибка: результат функции вызова отсутствует «значение»

    Где хранятся ключевые слова для поиска хрома / хрома?

    Как исправить: «Вы должны использовать тему Theme.AppCompat (или потомок) с этим действием»

    Перенаправление на указанный controller и действие в фильтр действий asp.net mvc

    Генерация случайных чисел в Objective-C

    Как изменить цвет по умолчанию диалогового windows DatePicker и TimePicker в Android?

    Не удалось установить пароль администратора в OOBE-pass после возврата из режима аудита при автоматической установке

    2 идентичных ПК. Могу ли я поменять один жесткий диск между ними и ожидать, что Windows 7 / XP будет работать?

    Давайте будем гением компьютера.