Intereting Posts
ОШИБКА: не удалось найти драйвер – использование PDO с базой данных MS Access Magento – получить все категории, содержащие продукты по брендам Удалить index.php из URL-адресов CodeIgniter Должен ли я отключить строгий режим MySQL? Что лучше требовать (dirname (__ FILE __). '/'. 'MyParent.php'), чем просто требовать ('myParent.php')? Как получить заголовки из последнего перенаправления с функциями curl PHP? Как написать запрос на обновление с помощью некоторой {$ variable} с примером Базы данных MySQL и файлов Ошибка OAuth Facebook: достигнут предел запроса приложения как получить месяц с даты в mysql Drupal 6: значения form_state пустые на submit Как получить все переменные, определенные в текущей таблице / таблице символов? Как форматировать данные определенным образом с помощью html и php Как получить XML-данные как ассоциативный массив с атрибутами в качестве ключа в PHP wordpress posts_orderby фильтр с пользовательской таблицей в плагине

Является ли SPLFileObject атомарным?

Мне интересно, являются ли методы PHP SPLFileObject атомарными (например, потокобезопасными) или нет?

Если это не так, я реализую свой собственный класс, который будет использовать flock() , но этого достаточно? Действительно ли функция стаи является потокобезопасной? Что делать, если столкновение происходит после того, как я fopen() файл, но прежде чем я flock() это?

    Я думаю, вы злоупотребляете термином «поточно-безопасный». Thread saftey (в основном) об общих ресурсах в многопоточном коде. PHP не имеет потоков, и файловые дескрипторы не являются общими ресурсами. Однако файлы являются общими ресурсами. Я думаю, что вы ищете вместо этого термин « состояние гонки ».

    Что делать, если столкновение происходит после того, как я fopen() файл, но прежде чем я flock() это?

    То же самое произойдет, если вы не используете SPLFileObject. Просто убедитесь, что вы никогда не открываете + усекать, всегда открываете + добавьте, а затем обрезаете, как только у вас есть блокировка. Это должна быть стандартная процедура, если вы уже знаете, как работают условия открытия и блокировки файлов.