Подскажите, как можно реализовать коллекцию, реализующую INotifyCollectionChanged, и которую можно было бы потокобезопасно перебирать? Наследоваться от ConcurrentCollection не получится, т.к. не получится реализовать INotifyCollectionChanged.
Для потокобезопасного перебора я вижу следующие варианты: 1) Блокировать коллекцию на время обхода. Но, если обработка элемента занимает длительное время, этот вариант не подходит 2) Перед перебором коллекции блокировать доступ к ней на время создания её копии и перебирать уже копию. Но при частом переборе будет создаваться много мусора.
Если наследоваться от ObservableCollection, то получу весь необходимый функционал, вставив блокировку в методы, модифицирующие коллекцию, но не смогу переопределить GetEnumerator и скопировать в нем коллекцию для потокобезопасного обхода коллекции.
Единственный вариант - реализовать свою коллекцию с нуля?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
прошу Вас помогите 3 дня уже почти сижу не могу понять как сделатьЕсть ХМЛ документ вот пример: Как видите, тут два атрибута <"ValType Type="> повторяются,...
Моя цель - получить событие "донат" от стороннего ресурса (DonationAlerts) для дальнейшей обработки сообщенияСвязывался с поддержкой по этому поводу,...
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском