Размер deny-list влияет на стоимость поиска, копирования и длительность критической секции, но не определяет примитив синхронизации сам по себе. Важны также частота обновлений и требования к актуальности.
Как размер deny-list связан с выбором инструмента для критической секции?
Размер deny-list влияет на стоимость поиска, копирования и длительность критической секции, но не определяет примитив синхронизации сам по себе. Важны также частота обновлений и требования к актуальности.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Размер deny-list влияет на стоимость поиска, копирования и длительность критической секции, но не определяет примитив синхронизации сам по себе. Важны также частота обновлений и требования к актуальности.
Для часто читаемого редко меняющегося списка подходит неизменяемый snapshot с атомарной публикацией. Для изменяемого общего map могут подойти Mutex/RWMutex или разделение по сегментам.
Большой snapshot дорого копировать, а длинный поиск под lock увеличивает contention. Сначала выберите структуру данных и измерьте нагрузку; замена Mutex на RWMutex без анализа может не дать выигрыша.