我打算用Java做一个项目,我希望将顺序Java代码转换为并发Java代码并测量效率。关于哪个免费源java应用程序最适合我的项目的任何建议。任何其他建议如何去做?
提前致谢 契据
答案 0 :(得分:3)
我认为您可以使用JDK附带的Java Concurrency Framework。 http://java.sun.com/j2se/1.5.0/docs/guide/concurrency/
答案 1 :(得分:0)
问题在于您使用代码执行的任务是否可以同时运行。如果您的代码是按顺序编写的,那么您首先需要确定可以同时运行哪些任务,这些任务之间的相互依赖性,它们是否需要协作或它们是否独立。如果他们需要合作,您将需要共享对象,锁定等。您需要决定是否应该每次为每个新任务使用线程池或创建自己的线程。其中大多数都是非常具体的情况,所以不能有一个通用的答案。一旦你想出了所有这些,请查看有关如何实现的java并发文档。
答案 2 :(得分:0)
这是最简单的解决方案。
Runnable runnableObject = new Runnable() {
public void run() {
try {
... call your original logic ...
} catch (Exception ex) {
... Exception handling ...
} finally {
... final action ...
}
}
}
ArrayList listThreads = new ArrayList();
for (int i=0; i<CONCURRENT_THREADS_SIZE; i++) {
Thread threadObject = new Thread(runnableObject, "mythread-" + i);
threadObject.start();
listThreads.add(threadObject);
}