2012-04-28 189 views
0

我喜欢得到您的专家的建议。 我有一个Windows程序,可以完成这项任务多任务的最佳线程策略

  1. 在一个文件(激光扫描数据)中读取1000万个点在一个线程中。需要1分钟。 完成后。
  2. 在新线程中计算网格。花费约3分钟。然后用户可以选择不同的任务。
  3. 创建位图(图像)或其他对象,如高程等值线。它是在其他线程中完成的。需要1分钟。
  4. 最终用户可以将位图或对象保存到文件中。

我的意图是现在允许一个批处理任务,用户选择一堆文件并指定GRID设置以及他/她想要的位图。

您认为这样做的最佳策略是什么? 我不是高级程序员,我看看BackgroundWorker。如果您喜欢使用具有两个或更多内核的新计算机,这是一种方式吗?

+0

openMp对于并行数据处理来说总是一个好主意我不确定它是否存在c# – sherif 2012-04-28 08:54:17

回答

0

听起来不错。我不明白你的整个应用程序,但听起来你应该能够并行地完成一些事情。

您可以定义一个可以容纳批处理作业的品脱和GRID数据的类,并且具有执行所有这些步骤的方法吗?

GRID计算是否可以分解为对点阵列的独立段进行操作的子任务,或者在任何GRID计算开始之前所有点都可用?

+0

是的,我可以为点和网格定义一个类,并且方法已准备就绪。一个问题是 - 如果我有一个“Batch”BackgroundWorker,我应该保留这些方法中的原始线程。我认为很难分割GRID任务。你必须拥有所有点数。 – 2012-04-28 09:18:14