Atomic 是一个轻量级的 属性包装器,保证了对使用 @Atomic 属性装饰的属性进行线程安全访问。
class Task {
@Atomic var title: String
init(title: String) {
$title = Atomic(title)
}
}
let task = Task(title: "Buy groceries")
DispatchQueue.global().async { task.title = "Buy flowers" }
DispatchQueue.global().async { task.title = "Clean kitchen" }
要将 Atomic 与 Swift 包管理器一起使用,请将依赖项添加到你的 Package.swift 文件中
let package = Package(
dependencies: [
.package(url: "https://github.com/shareup/atomic.git", .upToNextMajor(from: "1.0.0"))
]
)
目前不支持 Linux