0

我想在 c# 中使用带有一些通用代码的设计模式和以下场景来实现轮询方法。

我有 3 个控制台应用程序名称 Employee、Orders、Salary,在此来自 Employee 应用程序我正在启动 Orders 和 Salary 控制台应用程序,一旦我启动应用程序 Orders 和 Salary 控制台应用程序是长时间运行的应用程序,它将继续运行,我们正在使用每个应用程序的完成状态更新本地文本文件。

从 Employee 应用程序中,我创建了一个 Timers objected 并使用 Elapsed Event 2 秒来检查文件文本是否具有文件已完成的状态。

所以我想以更通用的方式或使用其他一些方法/设计模式来实现下面的实现,以便我们可以实现类似的轮询概念,因为我有一个复杂的情况,我每次都必须使用相同的重复代码。对此有什么建议吗?

var poolingTimer = new Timer(2 * 1000);
poolingTimer.AutoReset = false;
poolingTimer.Elapsed += async delegate {
   if (logic to check if File text has console application completed status) {
      poolingTimer.Stop();    
   } else {
      poolingTimer.Start();
   }
};
poolingTimer.Start();
4

0 回答 0