ObservableCollection
中的背景线程更新通常会导致异常。 这是因为ObservableCollection
不是线程安全。同时访问它的多个线程可能会导致不可预测的行为。
.NET 4.5及以后的ObservableCollection
>解决方案
BindingOperations.EnableCollectionSynchronization
这个单线成就:BindingOperations.EnableCollectionSynchronization(myCollection);
线程关联:
ObservableCollection
myCollection
同步:CollectionChanged
>在事件处理过程中实现锁定,防止背景线程修改和UI线程访问之间的冲突。螺纹安全。 对于稳健的线程安全,在直接从背景线程中直接修改集合时,请始终使用锁:BindingOperations.EnableCollectionSynchronization
ObservableCollection
通过合适的锁定组合,您可以安全有效地从工作线程中更新您的,而不会损害UI线程的完整性。
以上是如何从 .NET 中的工作线程安全地更新 ObservableCollection?的详细内容。更多信息请关注PHP中文网其他相关文章!