GuiDispatcher
Ecng.Xaml
调度器,用于向WPF UI线条提出行动,并附有分批和定期执行支持。
继承自: Disposable
实现: IDispatcher
构造函数
GuiDispatcher
public GuiDispatcher()
guiDispatcher = GuiDispatcher()
使用当前线程调度器初始化 GuiDispatcher 类的新实例 。
GuiDispatcher
public GuiDispatcher(Dispatcher dispatcher)
guiDispatcher = GuiDispatcher(dispatcher)
初始化了 & ##GuiDispatcher+# 类的新实例 。
- dispatcher
- UI 线程调度器实例 。
属性
GlobalDispatcher
public static GuiDispatcher GlobalDispatcher { get; }
value = GuiDispatcher.GlobalDispatcher
获得全球GuiDispatcher单子实例 。
Interval
public TimeSpan Interval { get; set; }
value = guiDispatcher.Interval
guiDispatcher.Interval = value
获取或设置批处理间隔。默认为 1 ms 。
MaxPeriodicalActionErrors
public int MaxPeriodicalActionErrors { get; set; }
value = guiDispatcher.MaxPeriodicalActionErrors
guiDispatcher.MaxPeriodicalActionErrors = value
获取或设定周期动作在被移除前允许的最大出错次数。 使用 - 1 来禁用此限制 。
PendingActionsCount
public int PendingActionsCount { get; }
value = guiDispatcher.PendingActionsCount
获得待处理动作的数量。
方法
AddAction
public void AddAction(Action action)
guiDispatcher.AddAction(action)
执行时在 UI 线程上排队动作 。
- action
- 执行的动作 。
AddPeriodicalAction
public IDisposable AddPeriodicalAction(Action action)
result = guiDispatcher.AddPeriodicalAction(action)
在每个调度器勾选时添加一个会执行的周期动作。返回一个可以用来删除它的指标。
- action
- 执行的动作 。
返回值: 一个可以用来去除动作的符号.
AddSyncAction
public void AddSyncAction(Action action)
guiDispatcher.AddSyncAction(action)
执行指定动作同步 UI 线程 。
- action
- 执行的动作 。
AddSyncAction``1
public T AddSyncAction<T>(Func<T> action)
result = guiDispatcher.AddSyncAction(action)
执行指定函数同步在 UI 线程上运行,并返回结果。
- action
- 要执行的功能 。
返回值: 函数结果 。
FlushPendingActions
public void FlushPendingActions()
guiDispatcher.FlushPendingActions()
要求立即处理所有已排队的行动 。
InitGlobalDispatcher
public static void InitGlobalDispatcher()
GuiDispatcher.InitGlobalDispatcher()
如果尚未创建, 则初始化全局调度器 。
InvokePeriodically
public IDisposable InvokePeriodically(Action action, TimeSpan interval)
result = guiDispatcher.InvokePeriodically(action, interval)