ObservableCollection
中的背景線程更新通常會導致異常。 這是因為ObservableCollection
不是線程安全。同時訪問它的多個線程可能會導致不可預測的行為。
.NET 4.5及以後的ObservableCollection
>解決方案
BindingOperations.EnableCollectionSynchronization
這個單線成就:BindingOperations.EnableCollectionSynchronization(myCollection);
線程關聯:
ObservableCollection
myCollection
同步:CollectionChanged
>在事件處理過程中實現鎖定,防止背景線程修改和UI線程訪問之間的衝突。 螺紋安全。 對於穩健的線程安全,在直接從背景線程中直接修改集合時,請始終使用鎖:BindingOperations.EnableCollectionSynchronization
ObservableCollection
通過合適的鎖定組合,您可以安全有效地從工作線程中更新您的,而不會損害UI線程的完整性。
以上是如何安全地從.NET中的Worker線程安全地更新觀測值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!