👾 —
GetOrAdd гарантирует, что фабричный делегат вызовется ровно один раз для каждого ключа 🤔 — Фабричный делегат может быть вызван несколько раз для одного ключа при конкурентном доступе, но в словарь попадёт только одно значение
🥰—
ConcurrentDictionary блокирует весь словарь на время выполнения фабрики ⚡️ — Использовать
Lazy<TValue> в качестве значения, чтобы гарантировать однократную инициализацию 👍 — Варианты 2 и 4 верны
Библиотека задач по C#