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