在WPF4偷跑亞當森說:從DispatcherObject繼承的類是線程安全的還是線程不安全的?
大多數WPF類自DispatcherObject派生的,因此本質上 線程不安全。
專業WPF編程聲稱相反:
DispatcherObject的是在架構層次, 的最低水平類,因爲幾乎所有的對象繼承它,大多數對象是 固有thread- safe
DispatcherObject上的MSDN:
只有分派器創建的線程可以直接訪問 DispatcherObject。爲了從線程 以外創建DispatcherObject的線程中訪問DispatcherObject,調用Invoke 或調度程序上的BeginInvoke,DispatcherObject與 相關聯。
根據MSDN的描述,它看起來像WPF4偷跑報價要麼是一個錯字或彌敦道是不對的和專業WPF編程作者是正確的......
反正是類繼承DispatcherObject本質上是線程安全的還是固有線程不安全的?
編輯:
MSDN還指出:
需要通過調用VerifyAccess上所有公共方法執行線程安全可以 這樣做DispatcherObject的子類。這保證了 的調用線程是DispatcherObject創建的線程 。
這間接證實了WPF4偷跑要求準確畢竟...
取決於* thread-safe *的定義。 –