Silverlight 调度程序事件队列顺序
Silverlight Dispatcher 事件队列的顺序是否严格保留?
详细说明:如果我恰好有另一个线程调用 Dispatcher.BeginInvoke,是否可以保证这些调用将以相同的顺序在 UI 线程上处理,或者顺序是不确定的?
Is the Silverlight Dispatcher event queue's ordering strictly preserved?
To elaborate: If I have exactly one other thread calling Dispatcher.BeginInvoke
, is it guaranteed that those calls will be processed on the UI thread in the same order, or is the ordering nondeterministic?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
来自 MSDN:
所以,是的,如果同一个线程正在对消息进行排队,那么它们将按照排队的顺序执行。假设 Silverlight 遵循相同的规则(我假设它遵循相同的规则,但它不包含可访问的 DispatcherPriority),并且 Silverlight 的 BeginInvoke 的 MSDN 文档相当简单。
From MSDN:
so, yes, if the same thread is queueing the messages, they will be executed in the order they are queued. That's assuming Silverlight follows the same rules (I'm assuming it does but it does not include an accessible
DispatcherPriority
) and the MSDN docs for Silverlight'sBeginInvoke
are rather light.