找出 Atomic 自增里的 bug

来自 属性包装器
Swift 6.3.3 进阶 4分钟 找出 1处问题

找出这个包装器为什么不能让 increment() 成为原子操作。

swift
@propertyWrapper
final class Atomic<Value> {
    private var value: Value
    private let lock = NSLock()

    var wrappedValue: Value {
        get { lock.withLock { value } }
        set { lock.withLock { value = newValue } }
    }

    init(wrappedValue: Value) { value = wrappedValue }
}

final class Counter {
    @Atomic var count = 0

    func increment() {
        count += 1
    }
}
在试验场中打开
报告错误