ConcurrentDictionary Pitfall - Czy fabryki delegatów z GetOrAdd i AddOrUpdate są zsynchronizowane?

DokumentacjaConcurrentDictionary nie ma wyraźnego stanu, więc myślę, że nie możemy oczekiwać, że delegacivalueFactory iupdateValueFactory zsynchronizuj ich wykonanie (odpowiednio z operacji GetOrAdd () i AddOrUpdate ()).

Sądzę więc, że nie możemy zaimplementować w nich zasobów, które wymagają jednoczesnej kontroli bez ręcznego implementowania naszej kontroli współbieżnej, być może po prostu przy użyciu[MethodImpl(MethodImplOptions.Synchronized)] nad delegatami.

Czy mam rację? Albo fakt, żeConcurrentDictionary czy jest bezpieczny dla wątków, możemy się spodziewać, że połączenia z tymi delegatami są automatycznie synchronizowane (również w wątku)?