用一个调用处理调度程序队列/后台线程

本文关键字:队列 调度程序 后台 线程 处理 调用 一个 | 更新日期: 2023-09-27 17:58:55

我有一个WPF应用程序和一个使用单独线程的登录窗口。在我的主线程上,应用程序正在加载(PRISM模块等),并将进度报告给我的登录窗口。

引导程序完成后,登录视图将关闭,并显示应用程序主窗口。

为了确保每个后台工作或Dispatcher活动都完成了,我想在显示主窗口之前调用一个方法。

是否有任何方法可以处理所有挂起的后台任务/Dispatcher队列项目

用一个调用处理调度程序队列/后台线程

您可以检查调度程序是否空闲,以确保不存在任何操作。

要做到这一点,您可以使用dispatcher.CurrentDispatcher.Hooks 挂接到调度器

之后,您可以为钩子添加一个事件处理程序。DispatcherInteractive+=DispatcherInactiveHandler

这将告诉您Dispatcher当前是否为空。