2011-03-14 52 views
1

我正在开发一个java代码,它使用通过调用jar文件在matlab中编写的某些代码。线程Matlab代码

由于有许多功能上下工夫..会好于Java的一个单独的线程,每个MATLAB函数调用相关的关联,因为它强烈处理需要处理的相当长的时间......

哪一个会更好地构建代码? 使用多个线程或调用简单的函数调用?

Thanx in Advance .. :)

+1

这听起来像你可以平分执行到多个进程。如果是这种情况,那么这将是更简单的方法。当你使用不同的线程时,你不得不担心内存的哪些部分是共享的,哪些不是,那(尤其是调试它)可能是一个真正的痛苦。更详细的答案需要你更详细地解释你的问题。 – Paul

回答

2

除非您使用Parallel工具箱,否则多线程无法正常工作。 Matlab在单线程中执行其计算,并且不允许并发请求。调用你的jar文件将会阻塞,直到Matlab完成前面的调用。

解决这个问题的唯一方法就是通过Runtime.exec()将每个函数作为一个独立的进程执行,并使用RMI与新进程进行通信。