2011-03-13 70 views
0

我想通过使用每个输出单元的1个线程将2个矩阵相乘。
我在unix上使用C++/g ++。
我该怎么去做这件事?
我可以在循环中执行此操作吗?使用线程的矩阵乘法

+1

听起来像一个家庭作业。 – 2011-03-13 15:06:57

+0

是的,这是我第一次使用线程进行的任务。 – ohlegend 2011-03-13 15:10:01

+1

到目前为止,你在这个问题上做了什么? – 2011-03-13 15:10:36

回答

1

这里是我的建议:

  1. 写它来计算一个输出单元的功能。给它指示要计算哪个单元格的参数。
  2. 编写一个使用循环计算每个单元格的单线程程序(从“1”调用函数)。存储所有结果,并且不要将它们写出来,直到完成计算所有单元格为止。
  3. 修改程序,以便每个循环不是调用该函数的每个循环,而是创建一个线程来执行该函数。
  4. 找出如何让“主”程序等到所有线程完成后才写出所有结果。

我认为这会给你一个制定解决方案的策略,而不需要我为你做功课。

如果你有一个去,它不起作用,发布你的代码在这里,人们会帮助你调试它。重要的部分不是让你得到一个好的答案,而是让你学会如何解决这类问题 - 所以如果有人给你答案,它不会真正帮助你。