Ответ 1
Add
ничего не делает (возвращает false
), если уже есть значение для этого ключа. Set
при необходимости вставляет или обновляет.
Remove
+ Add
оставит промежуток посередине, когда другой поток, запрашивающий этот ключ, не получит никакой подсказки (Set
does not; swap обычно является атомарным); как таковой, в то время как Set
имеет тот же конечный результат как Remove
+ Add
, разница в механизме важна, поскольку это может повлиять на других вызывающих абонентов.
Например Добавить:
Возвращаемое значение
Тип: System.Boolean true, если вставка выполнена успешно, или false, если в кеше уже есть запись с тем же ключом, что и ключ.