例如,我有這樣的自定義操作:如何運行異步操作
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