这是一个开放式问题。 我应该考虑哪些方法?

===============>>#1 票数:9

您的第一步是找到并理解问题中的并行性。 编写多线程代码并不比它替换的单线程代码更好。 “并行编程模式” (亚马逊)是关键概念的一个很好的介绍。

一旦有了可行的设计,就可以开始阅读MSDN Magazine档案(链接)中 “并发”主题中的文章,特别是Jeff Richter编写的任何内容。 这些将为您提供特定于Windows和.NET的线程构造的基本内容。 (Richter的“CLR via C#” (亚马逊)中的多线程部分很简短,但非常有见地 - 强烈推荐。)

===============>>#2 票数:5

.NET有一些并行扩展,目前正在测试并可在Microsoft的Parallel Computing Developer Center中获得 他们有一些有趣的项目,比如Parallel foreach和LINQ的并行版本称为PLINQ。 有关扩展的一些最佳信息在Channel 9上

===============>>#3 票数:1

我认为我们还可以包括非特定于.NET的并行处理方法,如果这些方法是最好的选择。

===============>>#4 票数:1

@Larsenal

如果你想在.NET之外进行分支,那么就会有很多关于英特尔的线程构建模块的讨论,这是一个用于C ++的并行库。

===============>>#5 票数:0

有很多选择,最佳解决方案将取决于您尝试解决的问题的性质。 如果您正在尝试解决一个令人尴尬的并行问题,那么划分和并行化任务将是微不足道的。 在这种情况下,挑战将在于分发和管理所使用的数据。

一些建议是:

  ask by translate from so

未解决问题?本站智能推荐: