что при создании строки .net ищет, есть ли уже такая строка, и если есть, то делает ссылку на неё вместо того, чтобы создавать новую. Ну и что? А если в проге сто тыщ строк, быстро ли они будут искаться? прямо вот каждая каждая строка дедуплицируется? тут в коде кто-то сделал lock(string.Intern(id)) и я пытаюсь понять смысл этого костылирования
Используем интернирование в продакшне. Есть определённый набор строковых данных, которые надо быстро сличать. Данные подгружаются из БД и кладутся в локальный кеш на 15 минут, входящие запросы тоже интернируются — проход фильтрации по этому дереву занимает 2 мс против 15 мс в случае интернирования строк
Обсуждают сегодня