命名一个类,如果它还没有在调度队列中,则将其放入操作调度队列中。

3

我编写了一个简单的类,用于处理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个回答

1
作为类的名称,我会定义为“DispatcherAction”,方法我会称之为“Queue”。
也许你可以在名称中添加形容词“deferred”或“delayed”,因为执行操作取决于调度程序。因此,很明显这些操作不会立即执行。
更新: 如果已经有操作在队列中,而它们被丢弃了,我会将方法命名为“TryQueue”,并返回一个布尔值。如果操作已排队,则该方法返回“true”,如果操作已被丢弃,则返回“false”。

我在方法中使用了 Enqueue 这个名称,但对于审核人员来说,它似乎是一个错误的名称,因为动作并不总是被排队。如果已经在队列中,它会被丢弃。 - Nitesh

0
如何创建一个DispatchManager类,并添加一个Start()方法?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接