5
是否嚴格保留了Silverlight Dispatcher事件隊列的排序?Silverlight Dispatcher事件隊列順序
詳細說明:如果我恰好有一個其他線程調用Dispatcher.BeginInvoke
,是否保證這些調用將以相同的順序在UI線程上處理,或者是否爲排序非確定性?
是否嚴格保留了Silverlight Dispatcher事件隊列的排序?Silverlight Dispatcher事件隊列順序
詳細說明:如果我恰好有一個其他線程調用Dispatcher.BeginInvoke
,是否保證這些調用將以相同的順序在UI線程上處理,或者是否爲排序非確定性?
從MSDN:
如果多個BeginInvoke的調用都在同一的DispatcherPriority做出 ,他們 將在 調用的時間順序執行。
所以,是的,如果同一個線程排隊的消息,他們將按照他們排隊的順序執行。這是假設Silverlight遵循相同的規則(我假設它的確如此,但它不包括可訪問的DispatcherPriority
),而Silverlight的BeginInvoke
的MSDN文檔相當輕鬆。
其有趣的是,這個確切的問題已被問及之前和最近,但我現在找不到它。給出完全相同的答案。 – AnthonyWJones 2011-01-07 17:50:10