命名一个将操作置于调度程序队列中的类(如果尚未存在)

时间:2010-07-28 06:35:41

标签: c# wpf silverlight

我编写了一个简单的类,它使用UIElement和要调用的动作。 每当调用该操作时,它都会将操作置于调度程序队列中(如果尚未存在)。我用它来减少通话次数。

class NoNameClass
{
 // has element and action in its ctor.

 void NoNameMethod()
 {
  if (!inQueue)
  {
   inQueue = true;
   element.Dispatcher.BeginInvoke(()=> 
    {
      inQueue = false;
      action();
    }
  }
 }
 bool inQueue;
}

你能为这个班级和方法建议一个名字吗? 感谢

2 个答案:

答案 0 :(得分:1)

作为班级的名称,我将定义“DispatcherAction”和我称之为“队列”的方法。

也许你可以将名称“延迟”或“延迟”添加到名称中,因为它在执行动作时由Dispatcher决定。很明显,这些行动不会立即执行。

<强>更新 对于丢弃操作的情况,当它们已经在队列中时,我会将方法命名为“TryQueue”并返回一个布尔值。如果操作排队,则该方法返回“true”,如果操作被丢弃,则返回“false”,因为它已经排队。

答案 1 :(得分:0)

带有Start()方法的DispatchManager类怎么样?