与 GCD 交互
要运行示例项目,请克隆仓库,并首先从 Example 目录运行 pod install
枚举遵循 RawRepresentable
提供队列
Queue.main
Queue.background
易于创建队列
let queue = Queue(name: "queue", attribute: Attribute.Serial, qualityOfService: QualityOfService.UserInteractive)
sync {
print("action goes inside main queue using dispatch_sync")
}
async(Queue.background) {
print("action goes inside background queue using dispatch_async")
}
after(5) {
print("action goes inside main queue after 5 seconds using dispatch_after")
}
每个操作都是一个任务,可以链式操作。任务类似于一个 Pull Signal
let task = on {
print("action on main queue")
}
task.run()
let background = Queue(name: "background", attribute: Attribute.Serial, qualityOfService: QualityOfService.Background)
on(background) {
print("on background")
}
.delay(1) {
print("after delay")
}.on(Queue.main) {
print("on main")
}.run()
after
和 delay
,如果没有提供队列,则默认为主队列 !!on
和 delay
Performer 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod "Performer"
致谢于
Khoa Pham,[email protected]
Performer 可在 MIT 许可证下使用。有关更多信息,请参阅 LICENSE 文件。