Русский
Открыть в Telegram

ПостПочему mmap не всегда избавляет от копирования

14 октября 2026
Z
Zen of Python
Фотография
нажмите — покажем
Почему mmap не всегда избавляет от копирования mmap позволяет обращаться к содержимому файла по смещениям. Это удобно для бинарных форматов и повторного поиска, но срез mapped[start:end] всё равно создаёт новый объект bytes. Чтобы работать с данными через заимствованное представление, используйте memoryview. Тогда нужно следить за временем жизни: пока представления существуют, закрытие mapping может вызвать BufferError. Освободите их до выхода из контекстного менеджера. Отображение не означает, что весь файл сразу загружен в RAM, и не делает его неизменяемым снимком. Другой процесс всё ещё может менять исходный файл. Для одного последовательного прохода обычное буферизованное чтение часто проще. Выбирайте mmap под характер доступа и измеряйте результат. #python #память
4 · 1.2K ·

Рядом в ленте

ZZen of PythonКогда Path.info экономит обращения к файловой системе При обходе большого каталога проверки is_file() и is_dir() могут создавать множество запросов метаданных. ZZen of PythonОпрос
это сообщение
ZZen of PythonПочему Rust внутри CPython предлагают начать с zlib На Python Language Summit обсудили постепенное внедрение Rust в CPython. Первый кандидат — модуль zlib: небоZZen of PythonПочему тест проходит отдельно и падает в наборе Один тест добавляет объект в общий список, другой рассчитывает, что список пуст. При привычном порядке запуска о

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем