@Корай: ловлю вас на слове, я не сделал тебя счастливой, не будучи вашим учителем. Это было, конечно, никаких неприятностей с моей стороны, поэтому я счастлив. На основе вашего последнего комментария, Вы были бы счастливее не продолжать диалог со мной, так, пожалуй, не стоит. Еще раз желаю вам всего наилучшего в ваших будущих начинаниях. @Обычно JulianaKarasawaSouza в холодильнике, она длилась гораздо дольше - две недели или так. Стало немного суше. Я просто интересно, если это плохо или не так, это не выглядит как плесень! Ах, но тесты в вузах не типа шаблона. Так что теперь мы перестали смешивая здоровья (это смутное, неизвестное и недоказуемое риски что-то вроде для нефти) и продовольствия safetey (что правила предназначены для предотвращения болезней пищевого происхождения). Старый вопрос бездействовала так долго, что мы его проглядели. Я закрыл ее теперь.

Это классические гонки, так что исход непредсказуем по определению.

Среди прочего, это зависит от

  • функции fopen(3) или открыть(2) на запись,
  • как/если писатель буферирует его выход,
  • как читатель читает файл,
  • разница в скорости между читателем и писателем,
  • разница во времени между чтением и началом писателя.
  • И конечно, на современных многоядерных компьютерах, ситуация еще более осложняется другими факторами, опустить вниз (например, процесс планирования).

Если вы должны быть в состоянии прочитать файл, в то время как он переписывается, то вы можете сделать писателя сделать переходную копию файла, изменить, затем скопировать его обратно в исходный файл. Этот путь через это, например. Существует несколько способов реализации этого, но не бесплатный обед. Каждый метод имеет свои недостатки и последствия.