Существует ли ориентированный на многопотоковое исполнение и универсальный IList <T> в c#?

List или HashSet или что-либо еще встроило ориентированный на многопотоковое исполнение для дополнения только?

Мой вопрос подобен Ориентированному на многопотоковое исполнение и универсальному arraylist? но я только ищу безопасность для покрытия добавления к этому поточному списку, не удаление или чтение из него.

6
задан Community 23 May 2017 в 12:01
поделиться

2 ответа

.NET 4.0, вы можете использовать BlockingCollection , но он по-прежнему спроектирован для обеспечения безопасности потоков для всех операций, а не только для сложения.

В общем, разработка структуры данных, которая гарантирует, что одни операции будут безопасными для параллелизма, а другие нет, - это редкость. Если вас беспокоят накладные расходы при доступе к коллекции для чтения, вам следует провести сравнительный анализ, прежде чем вы изо всех сил стараетесь искать специализированные коллекции, чтобы справиться с этим.

7
ответ дан 8 December 2019 в 14:39
поделиться
System.Collections.Concurrent.BlockingCollection<T>

Ссылка.

9
ответ дан 8 December 2019 в 14:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: