Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpCcCd 377 of 509 menu
◀ ▶

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".

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить