Синхонизация доступа к файлу из скрипта.

1. ‮PLATINUM (16.07.2015 / 23:36)
Представим что у нас есть скрипт, который принимает параметры из формы и пишет их в начало файла. Пусть два пользователя одновремнно отправят данные скрипту. Тогда скрипт в потоке, обслуживающим первого юзера, прочитает файл, после этого тоже сделает скрипт второго юзера. Когда скрипт первого юзера уже запишет его сообщение, второй об этом даже и не узнает, и затрёт его. По идее это и должно происходить, ведь доступ к файлу не синхронизирован.

Однако этого-то как раз в практике на подобных скриптах не происходит. Почему?

2. Reflesh (17.07.2015 / 09:05)
1. platinum дамаль, В этом случаи, нужно писать в файл с блокировкой его, на запись. http://phpcode.ru/lib/1.htm

3. Incore (17.07.2015 / 11:51)
при записи используй LOCK_EX. тогда, если не ошибаюсь, сервер отдаст приоритет только одному, у второго будет небольшая задержка, что-то типа очереди. в любом случае потеря данных исключена.

URL: https://visavi.net/topics/42486