我的块操作完成处理程序正在显示随机结果。不知道为什么。我读过这个,所有的课程都说它类似于 GCD 中的调度组
请在下面找到我的代码
import Foundation
let sentence = "I love my car"
let wordOperation = BlockOperation()
var wordArray = [String]()
for word in sentence.split(separator: " ") {
wordOperation.addExecutionBlock {
print(word)
wordArray.append(String(word))
}
}
wordOperation.completionBlock = {
print(wordArray)
print("Completion Block")
}
wordOperation.start()
我期望我的输出是 ["I", "love", "my", "car"] (它应该显示所有这些单词 - 顺序或随机顺序)
但是当我运行我的输出是 ["my"] 或 ["love"] 或 ["I", "car"] - 它随机打印,没有所有预期值
不知道为什么会这样。请指教