ConcurrentDictionary в C#
Класс ConcurrentDictionary позволяет писать и читать пары из нескольких потоков без внешнего lock на весь словарь.
Внутри словарь блокирует только нужный участок, а не все ключи сразу. Поэтому параллельные записи по разным ключам меньше мешают друг другу, чем один lock вокруг обычного Dictionary.
Запись по ключу "a" выводит в консоль 1. Индексатор здесь похож на обычный словарь, но коллекция безопасна для нескольких потоков:
using System.Collections.Concurrent;
ConcurrentDictionary<string, int> map = new();
map["a"] = 1;
Console.WriteLine(map["a"]); // выведет 1
Запишите в потокобезопасный словарь по ключу "city" число 4 и по ключу "code" число 7. Выведите значение по ключу "city".