Документация ConcurrentDictionary
не содержит 't явное состояние, поэтому я думаю, что мы не можем ожидать, что выполнение делегатовvalueFactory
иupdateValueFactory
будет синхронизировано(с операциями GetOrAdd ()и AddOrUpdate ()соответственно).
Таким образом, я думаю, что мы не можем реализовать использование ресурсов внутри них, которым требуется параллельный контроль, без ручной реализации нашего собственного параллельного контроля, возможно, просто используя [MethodImpl(MethodImplOptions.Synchronized)]
над делегатами.
Я прав? Или тот факт, что ConcurrentDictionary
является потокобезопасным -, мы можем ожидать, что вызовы этих делегатов автоматически синхронизируются (потоком -безопасным также )?