ReadOnlyCollection Безопасность потоков

В документации для ReadOnlyCollection (of T) указано, что:

ReadOnlyCollection (Of T) может поддерживать несколько считывателей одновременно, пока коллекция не изменяется. Даже в этом случае перечисление через коллекцию по сути не является поточно-безопасной процедурой . Чтобы гарантировать безопасность потоков во время перечисления, вы можете заблокировать коллекцию на протяжении всего перечисления. Чтобы разрешить доступ к коллекции нескольким потокам для чтения и записи, вы должны реализовать свою собственную синхронизацию.

Мой вопрос касается выделенной жирным шрифтом части:

  1. почему перечисление через коллекцию изначально не является поточно-ориентированным
  2. каковы возможные последствия и
  3. каковы обычно используемые обходные пути?
9
задан Robert Koritnik 22 December 2011 в 12:12
поделиться