Pull to refresh
-3
0
Михаил Ошер @miraage

Software Engineer

Send message
Я его не буду трогать. Он для меня — как своего рода реликвия. Единственное, что я в нем менял, это материнскую плату — по причине неисправности и очень давно.
Представьте ситуацию. Пользователи u1 и u2 выполняют запрос с разницей во времени 0.01сек, что намного меньше времени работы скрипта. Пользователь u1 очищает файл модификатором w+, пишет в него данные. Делает «еще что-то». В то время, как u1 делает «еще что-то», в этот процесс вклинивается u2, стирает файл, а это время u1 запрашивает его для отображения. Что увидит u1, думаю не секрет…
Открытие файла на запись в режиме «w+» я считаю в корне неправильным.
Если вы имели дело с большими нагрузками, то должны знать, что в такие fopen'ы может одновременно влезть несколько запросов.

Следует писать
$fp = fopen($end, "a+");
flock($fp, LOCK_EX); // блокируем файл
// делаем все нужные операции
flock($fp, LOCK_UN); // снимаем блокировку файла
Лично для меня — удобный инструмент. Возможно, это следствие длительной разработки для Invision Power Board.
$fp = fopen($end, "w+")


За такое надо по рукам бить.
Дорогостоящий апгрейд? Сейчас цены на железо — смешнее некуда.

Я свой первый компьютер покупал в 2003 году. Системный блок мне обошелся в ~12000руб. На то время я получил 80Gb HDD, 512Mb RAM, 2GHz Proc, 128Mb Video.

Кстати говоря, у меня на нем отлично работает Win7 Colibri, с темой от Win98 и выключенным Aero.
12 ...
18

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity