寻求WPF调度员胡克会计的解释

寻求WPF调度员胡克会计的解释,wpf,dispatcher,Wpf,Dispatcher,我试图使用以下代码获取UI线程调度程序队列长度的度量值:。我进一步改进了钩子,以按优先级跟踪操作,并发现完成+中止的数量远远大于某些优先级的已发布操作的数量 例如,在五秒钟的采样间隔内,我看到7个操作以后台优先级发布,但完成次数超过1000次。对于渲染优先级,几乎就像每个帖子都会导致两次完成 其他类别看起来合理,但缺乏对渲染/背景的解释,这给其他优先级的准确性/相关性蒙上了阴影。这也不是优先级改变的问题,因为总的总数并不匹配 谁能解释一下我看到了什么 通过考虑“非活动”优先级来解决这个问题。看起

我试图使用以下代码获取UI线程调度程序队列长度的度量值:。我进一步改进了钩子,以按优先级跟踪操作,并发现完成+中止的数量远远大于某些优先级的已发布操作的数量

例如,在五秒钟的采样间隔内,我看到7个操作以后台优先级发布,但完成次数超过1000次。对于渲染优先级,几乎就像每个帖子都会导致两次完成

其他类别看起来合理,但缺乏对渲染/背景的解释,这给其他优先级的准确性/相关性蒙上了阴影。这也不是优先级改变的问题,因为总的总数并不匹配


谁能解释一下我看到了什么

通过考虑“非活动”优先级来解决这个问题。看起来,当许多(所有?)后台和渲染操作排队时,它们在发布时的优先级为“非活动”,但它们在完成时的优先级反映了操作的实际优先级,因此队列长度的总体情况是合理的,但看起来我无法通过优先级获得粒度(对于我的场景来说,这可能是可以的)