diff --git a/Sources/Defaults/UserDefaults.swift b/Sources/Defaults/UserDefaults.swift index 5e1bc2f..ac07def 100644 --- a/Sources/Defaults/UserDefaults.swift +++ b/Sources/Defaults/UserDefaults.swift @@ -10,12 +10,14 @@ extension UserDefaults { } func _set(_ key: String, to value: Value) { - if (value as? _DefaultsOptionalProtocol)?._defaults_isNil == true { - removeObject(forKey: key) - return - } + DispatchQueue.main.async { [self] in + if (value as? _DefaultsOptionalProtocol)?._defaults_isNil == true { + removeObject(forKey: key) + return + } - set(Value.toSerializable(value), forKey: key) + set(Value.toSerializable(value), forKey: key) + } } public subscript(key: Defaults.Key) -> Value {