matlabpool is not supported because Java is not currently available

조회 수: 3 (최근 30일)
Linar
Linar 2011년 7월 26일
I'm trying to run MultiStart solver in parallel from my c++ code. I compiled the matlab function containing matlabpool open 16 into a c++ shared library. However, when I call the function from c++ code, I get the following: Error using ==> matlabpool>iVerifyJava at 379 matlabpool is not supported because Java is not currently available.
Error in ==> matlabpool at 92
The shared library was compiled without -nojvm option. I guess, I have to use some additional argument when calling mclInitializeApplication. This is how I call it currently:
const char *args[] = {"-nodesktop", "-nodisplay", "-nosplash"};
if (!mclInitializeApplication(args, 3))
{
std::cerr << "mclInitializeApplication = false";
return false;
}
There is an option -java (<http://www.mathworks.com/help/toolbox/compiler/mclinitializeapplication.html)>, but when I try to use, it doesn't recognize it.
Any ideas?

답변 (1개)

Titus Edelhofer
Titus Edelhofer 2011년 7월 26일
Hi Linar,
for using mclInitializeApplications for a shared library I would usually pass no arguments at all, i.e.,
if (!mclInitializeApplication(NULL, 0))
although I doubt this will make a difference, does it?
Titus
  댓글 수: 1
Linar
Linar 2011년 7월 26일
Hi Titus,
originally I didn't pass any arguments and it didn't work as well.
I was just trying to find out an argument which enables java.
Of course, "-nodesktop", "-nodisplay", "-nosplash" don't do this, but -nodisplay for example helps to get rid of unwanted plots which I found helpful.
Linar

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Introduction to Installation and Licensing에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by