0
Array
がマルチスレッドシナリオで失敗しているという明確な例はありますか?私は以下のコードを試しましたが、管理されていないシナリオに存在するマルチスレッドの問題を実証していないようです。アレイ上の競合状態を示す方法
var unsafeArray = [Int]()
func unsafeMutate() {
DispatchQueue.concurrentPerform(iterations: 1000) { index in
if unsafeArray.count < 100 {
unsafeArray.append(1)
}
print("\(unsafeArray.count)") //Should not be over 100
}
}
アレイのスレッディング問題を説明するためのより良い例がありますか?