私は、多くの計算を伴う研究プロジェクトにMathematicaとJLinkを使用しています。Mathematicaは、パラメータを入力し、後で結果をプロットするためのグラフィカルなフロントエンドとして使用されます。実際のアルゴリズムは、JLinkを介して呼び出されるJavaクラスにあります。
「リンク」はevalFrontendという名前のインスタンスです。ボタンを押すと、次のようなことが実行されます。
RunEvaluation[] := (
success = False;
results = evalFrontend@run[];
eval = evalFrontend@getEvaluation[];
success = eval@success[];
Return[results];
)
計算に10秒以上かかる場合は、ダイアログが表示されます。
動的中止:カーネルが動的評価に応答していません。カーネルを中止して再起動するか、待機を続行するかを選択できます。[..]
これが表示されている間、Javaはまだ実行中です。ただし、しばらくすると、別のダイアログが表示されます。
動的を無効にする:オン以上の動的オブジェクトは、評価を完了するのに非常に長い時間がかかります。それ以上の動的評価を無効にするか、待機を続けることができます[...]
これが表示されると、Javaプロセスは終了します。
どうすればこれを防ぐことができますか?ヒントをいただければ幸いです。