通过外部应用程序调用一个函数,而无需打开一个新的Matlab实例
有没有办法从外部调用Matlab函数,特别是通过Windows cmd (也包括Linuxterminal,LUA脚本等),而不是每次都打开Matlab的新实例?
例如在cmd :
matlab -sd myCurrentDirectory -r "function(parameters)" -nodesktop -nosplash -nojvm
打开一个Matlab的新实例相对较快,并执行我的function。 打开和closures这个简化的matlab提示大约需要2秒钟(没有计算) – 因此4000次执行超过2小时。 我想避免这一点,因为被调用的函数总是位于同一个工作区。 总是可以在同一个实例中完成吗?
我已经做了一些研究,发现了MATLAB COM自动化服务器的可能性,但是对我来说似乎相当复杂,而且我没有看到使它适用于我的情况的基本步骤。 任何build议呢?
我不熟悉c/c++/c#但我正在考虑使用python (但在最坏的情况下)。
基于@Ilya Kobelevskiy的非工作但深思熟虑的想法,最后的解决方法是:
function pipeConnection(numIterations,inputFile) for i=1:numIterations while(exist('inputfile','file')) load inputfile; % read inputfile -> inputdata output = myFunction(inputdata); delete('inputfile'); end % Write output to file