Вопрос

I have read that ConcurrentDictionary only locks when writing, so the reads are lock free.

http://blogs.msdn.com/b/pfxteam/archive/2010/01/08/9945809.aspx reads on the dictionary are performed in a lock-free manner

But what about visibility, how do they ensure this when the reads are lock free?

Это было полезно?

Решение

The use of the MemoryBarrier ensures that the objects are 'published' for other threads. This does not require a lock.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top