Silverlight Dispatcher事件队列的排序是否严格保留?
详细说明:如果我有一个其他线程调用Dispatcher.BeginInvoke
,是否可以保证这些调用将以相同的顺序在UI线程上处理,或者排序是否不确定?
答案 0 :(得分:6)
来自MSDN:
如果进行了多次BeginInvoke调用 在同一个DispatcherPriority中,他们 将按顺序执行 打电话。
所以,是的,如果同一个线程正在对消息进行排队,它们将按照它们排队的顺序执行。这是假设Silverlight遵循相同的规则(我假设它确实如此,但它不包括可访问的DispatcherPriority
)并且Silverlight的BeginInvoke
的MSDN文档相当轻。