例如,我有这样的自定义操作:如何运行异步操作
class CustomOperation: Operation {
override init() {
super.init()
self.qualityOfService = .userInitiated
}
override func main() {
// ..
}
}
这是我在做什么来运行CustomOperation
:
let customOperation = CustomOperation()
customOperation.completionBlock = { print("custom operation finished") }
customOperation.start()
我有几个CustomOperation
小号试图在同一时间运行。无论如何要运行它异步没有为每个CustomOperation
创建OperationQueue
?因为isAsynchronous
属性是只读的。
我建议你远离'Operation'和'OperationQueue',并使用'Dispatch'库来代替。它已经更新了Swift,因此它更好用,更易于使用,它更加灵活,而且它实际上是'Operation' /'OperationQueue'在内部使用的。你究竟想要完成什么? – Alexander
@Alexander我试图从'UITableView'上显示的数组中执行每个对象的任务。如果一个对象将显示在'UITableViewCell'上,则操作开始。由于风格的原因,我使用'Operation'和'OperationQueue'。 – pableiros
“风格的原因”? – Alexander