Mex-File зависает с JAVA
Я скомпилировал mex-файл из кода C++, который использует GMP и некоторый uint64_t (я нахожусь на 32-битной WinXP).
Этот код C++ отлично работает на C++.
Но я заметил, что он просто зависает, когда я запускаю mex-файл в Matlab для некоторых входных данных (он просто зависает, мне нужно убить процесс).
Что я не понимаю, так это то, что если я запускаю его в режиме Matlab -nojvm, он работает отлично. Так что я думаю, это связано с виртуальной машиной Java. Я уже пытался увеличить предел кучи до 1024mo, но это не решило проблему.
Когда я вручную следую за запуском Matlab, когда он зависает, инструкции C++, кажется, останавливаются без объяснения (не бесконечный цикл или что-то в этом роде).
Каждый раз, когда я увеличивал предел кучи Java, память процесса Matlab тоже увеличивалась. Но если я запускаю точно такой же код в классическом файле main.cpp C++, он, похоже, не используется как память.
Это действительно странно.