Windows matlab低优先级系统调用

Windows matlab低优先级系统调用,windows,matlab,Windows,Matlab,我想检查/改进我使用的一些校正算法 整个过程在Matlab中实现,如下所示 for ii = 1:nn ... % Prepare some input files parfor i = 1:n system('...'); % simulation code end ... % Use the output and prepare some stuff that can be used to prep the next iteration end 其中,n

我想检查/改进我使用的一些校正算法

整个过程在Matlab中实现,如下所示

for ii = 1:nn
   ... % Prepare some input files
   parfor i = 1:n
      system('...'); % simulation code
   end
   ... % Use the output and prepare some stuff that can be used to prep the next iteration
end
其中,n是一个比我可以使用的#踏板更大的数字。这通常需要一段时间来运行,在此期间,我想使用计算机执行其他(不需要cpu的)任务。因此,我希望以低优先级运行系统调用

我已经尝试过使用new或start来执行此操作,但通话不会等到完成后才继续。如果检查输出文件是否存在,将会有一个肮脏的黑客,但我再次问自己,是否有更好的解决方案

任何帮助都将不胜感激

你的
magu

尝试使用
开始
命令中的
/wait
标志:

>> system( 'start /LOW /WAIT matlab.exe' );
启动一个新的matlab实例,并在我关闭打开的应用程序后才恢复执行


当然,您需要将我建议的解决方案中的
matlab.exe
替换为您要运行的模拟程序名。

的工作原理类似于charm thx。为了方便起见,我还添加了/MIN标志。回答得很好!不幸的是,这对我不起作用。我正在使用调用的.exe中的STDOUT,由于某些原因,在使用Windows start命令时STDOUT不起作用。还有其他方法吗?