-1
在Swift數據結構(如Array)上執行未啓用/未鎖定/未實現的操作可能會導致與內存相關的問題。然而,究竟哪些問題確切地出現並且更重要的原因尚不清楚。諸如價值重寫,內存損壞和合作等問題。是無法解釋的。Swift Array上的併發未受保護的操作可能導致哪些問題?
在Swift數據結構(如Array)上執行未啓用/未鎖定/未實現的操作可能會導致與內存相關的問題。然而,究竟哪些問題確切地出現並且更重要的原因尚不清楚。諸如價值重寫,內存損壞和合作等問題。是無法解釋的。Swift Array上的併發未受保護的操作可能導致哪些問題?
我認爲這將是明智的,並歡迎理解嘗試在多線程系統中無保護地訪問時可能出現的所有問題。
即I(假定)的幾個問題是:
2線程試圖追加到陣列。如果他們從相同的核心滴答開始,他們可能最終會覆蓋彼此的寫操作。如果兩個線程都開始收縮可能發生
雙人免費嘗試/成長事件,然後都去釋放舊內存的指針位置。閱讀(*不知道)
如果如a[x] = reference/value type
寫操作本身不是原子,那麼它可能是一個線程將開始寫的a[x]
地址,而另一個線程會讀[X]半地址。