Библиотека собеса по PHP | вопросы с собеседований
Копируется ли строка на 100 МБ при передаче в функцию по значению?
Ответ: Обычно полная копия сразу не создаётся. PHP использует разделение данных с подсчётом ссылок и механизм copy-on-write. Пока функция только читает строку, несколько переменных могут использовать одни данные. Когда требуется изменить разделяемую строку, создаётся отдельная копия. Поэтому передача по значению не означает немедленного удвоения памяти. Но конкретный расход зависит от операций внутри функции и устройства строки.
Документация: управление памятью и copy-on-write
Источник вопроса: Hennadii Alforov, раздел PHP itself.
➡️ Навигация: База знаний • Задачи • Собеседования • Вакансии
🐸 Библиотека программиста
2 · 630 ·