我编写了一个简单的类,它使用UIElement和要调用的动作。 每当调用该操作时,它都会将操作置于调度程序队列中(如果尚未存在)。我用它来减少通话次数。
class NoNameClass
{
// has element and action in its ctor.
void NoNameMethod()
{
if (!inQueue)
{
inQueue = true;
element.Dispatcher.BeginInvoke(()=>
{
inQueue = false;
action();
}
}
}
bool inQueue;
}
你能为这个班级和方法建议一个名字吗? 感谢
答案 0 :(得分:1)
作为班级的名称,我将定义“DispatcherAction”和我称之为“队列”的方法。
也许你可以将名称“延迟”或“延迟”添加到名称中,因为它在执行动作时由Dispatcher决定。很明显,这些行动不会立即执行。
<强>更新强> 对于丢弃操作的情况,当它们已经在队列中时,我会将方法命名为“TryQueue”并返回一个布尔值。如果操作排队,则该方法返回“true”,如果操作被丢弃,则返回“false”,因为它已经排队。
答案 1 :(得分:0)
带有Start()方法的DispatchManager类怎么样?