当前位置:  开发笔记 > 编程语言 > 正文

执行顺序方法的最佳方法是什么?

如何解决《执行顺序方法的最佳方法是什么?》经验,为你挑选了1个好方法。

处理必须每秒运行一系列顺序方法的项目x.现在我将方法包含在另一个"父方法"中,然后依次顺序调用它们.

class DoTheseThings()
{
    DoThis();
    NowDoThat();
    NowDoThis();
    MoreWork();
    AndImSpent();
}

每个方法必须成功运行,而不会在下一步完成之前抛出异常.所以现在我用a while和那些方法包装每个方法try..catch,然后catch再次执行那个方法.

while( !hadError )
{
    try
    {
         DoThis();
    }
    catch(Exception doThisException )
    {
         hadError = true;
    }

}

这看起来很臭,而且不是很干.有没有更好的方法来做到这一点,所以我没有在相同的方法中包装任何新的功能.是不是某种Delegate集合实现这个的正确方法?

有更"适当"的解决方案吗?



1> Ovidiu Pacur..:
Action[] work=new Action[]{new Action(DoThis),   new Action(NowDoThat),    
    new Action(NowDoThis),    new Action(MoreWork),    new Action(AndImSpent)};
int current =0;
while(current!=work.Length)
{
   try
   {
      work[current]();
      current++;
   }
   catch(Exception ex)
   {
      // log the error or whatever
      // maybe sleep a while to not kill the processors if a successful execution depends on time elapsed  
   }
}

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有