Stopping external Fortran Routine

Hello,
is there a way to stop an external routine called from matlab ? E.g when the routine gets stuck or takes too long (bad starting values or other reasons).
Thanks
Moritz

답변 (1개)

Walter Roberson
Walter Roberson 2013년 5월 25일

0 개 추천

It depends on how the routine was started.
If it was started through a direct call to the program (that is, the program has a mex interface), then NO, there is no way for that MATLAB session to stop it... at least not without having launched a watchdog program before-hand.)
If it was started through a call to system() or unix() or dos() and the command line does not include the character "&" then NO, same as above.
If it was started through a call to system() or unix() or dos() and the command line contains the character "&" in the right location, then the Fortran routine would run independently of the MATLAB session. In such a case, the MATLAB program could monitor the progress and use system() to call kill() [Linux or OS-X] or taskkill (MS Windows) to shot it.

이 질문은 마감되었습니다.

제품

질문:

2013년 5월 25일

마감:

2021년 8월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by