我有一个 Word 自动化项目,它在线性意义上运行良好,它打开一个 Word 副本,然后一次一个顺序处理大量文档,我想通过创建 4 个 Word 进程/对象和能够在 Word 对象之一可用时以分布式方式将文件分派到这些进程,我不想在任务中创建新的 Word 实例,因为这无助于提高必须创建和反复关闭 Word。此外,我希望能够为任务设置超时,以便如果文档导致问题,那么我可以中止它,将其标记为错误,然后继续处理其余文件。
另请注意,对于任务,我并不是专门指 C# 任务,而是指可重复的工作,我很高兴在 C# 中使用任务,但我也很高兴使用任何其他有效的模式或类。
所以任何人都可以推荐一个设计模式或一些关于我如何做到这一点的阅读材料,甚至是一个非常简单的伪代码或 C# 示例。
提前致谢
对象池模式怎么样?您可以保留一定数量的 Word 进程,并且可以在任务之间安全地共享。有一个答案提供了此实现的示例。
它不包括你对超时的要求,但是如果你在每个Task中处理错误并释放资源,即Word进程,那么你可能不需要考虑超时逻辑。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句