无论我尝试什么,我都无法使用JOMP运行多个线程。实际上,无论我尝试什么,我都无法从命令行运行JOMP程序,虽然具有讽刺意味的是它会从那里编译然后在Eclipse中运行!即使在Eclipse中,我只有一个线程。我已经仔细阅读了我大学课程中关于安装JOMP的笔记,但他们没有帮助。我会更具体:
以下引号中的项目来自这些注释:
这是指现在已断开的链接。它似乎也是Stackoverflow等论坛上讨论这个问题的唯一链接。显然它有关于Eclipse的运行时设置的说明,允许多个线程运行,但由于链接当前已被破坏,我无法访问这些有价值的指令。
我在命令提示符下运行echo%CLASSPATH%以检查它是否在类路径上并得到以下响应:
C:\ Program Files \ Java \ jre1.8.0_162 \ lib \ jomp1.0b.jar
在我的电脑上,jomp jar文件位于该文件夹中,因此看起来我应该能够从命令行执行已编译的JOMP程序,但不幸的是情况并非如此。通过执行其中一个命令,它应该运行:
java -Djomp.threads = 2 parallel
java -Djomp.threads = 2 -cp。平行
java -Djomp.threads = 2 -cp C:\ Users \ terry \ eclipse-workspace \ JOMPHello \ src parallel
这是jomp,java和编译类文件所在的文件夹。我还检查了" parallel"是我在Eclipse中设置的完全限定的类名,它看起来确实如此。因此,运行其中一个命令应该允许我从命令行运行jomp程序尽可能接近,但它们都返回以下错误:
错误:无法找到或加载主类并行 引起:java.lang.ClassNotFoundException:parallel
(我觉得要告诉Java,"你看起来不够努力!它正好在我运行此命令的文件夹中!")
显然我错过了一些东西。任何人都可以告诉我如何在命令行上运行JOMP程序,或者知道如何在Eclipse中设置有关运行时设置的工作的可访问指令?
我的程序实现似乎只运行一个线程,所以希望这意味着它是正确的,但我只能确定一旦我用至少几个线程运行它。
谢谢, 特里。
答案 0 :(得分:0)
我想出了如何在Eclipse中设置运行时参数。您只需将以下行添加到文件的“运行配置”中“参数”选项卡下的“VM参数”框中:
−Djomp.threads=n
(其中n和以前一样是你想要的线程数)。
我仍然想知道它为什么不在命令行上工作。这让我觉得我的Java很奇怪。