Синхронизация ICollection - PullRequest
       9

Синхронизация ICollection

0 голосов
/ 23 октября 2009

При соблюдении определения

ICollection extends IEnumerable. It provides size and synchronization members in addition to enumeration.

Представляет ли синхронизация здесь синхронизацию коллекции, когда она является общей несколькими нитями?. Пожалуйста, объясните мне на простом примере, как я могу практически использовать "ICollection.IsSynchronized Property".

Спасибо.

1 Ответ

1 голос
/ 23 октября 2009

Если IsSynchronized - true, коллекция должна быть поточно-ориентированной. Однако вам все еще может потребоваться блокировка нескольких операций со списками (таких как поиск и индексирование перед вставкой или что-либо еще), и в этом случае вы можете использовать свойство SyncRoot.

Обратите внимание, что оба члена присутствуют только в неуниверсальном интерфейсе ICollection. Более новый (.NET 2) ICollection<T> интерфейс не предлагает их, и, честно говоря, обычно вы собираетесь заблокировать себя вместо использования синхронизированного списка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...