Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何用MATLAB并行运行批处理文件?_Batch File_Matlab_Simulink - Fatal编程技术网

Batch file 如何用MATLAB并行运行批处理文件?

Batch file 如何用MATLAB并行运行批处理文件?,batch-file,matlab,simulink,Batch File,Matlab,Simulink,我正在为一个外部程序开发Simulink工具箱,问题是我需要并行运行这两个程序。我可以从MATLAB运行调用批处理文件的外部程序,但该程序设计为在模拟的每个步骤中等待Simulink提供的信息。程序检索信息,对其进行处理,并向Simulink发送报告,以运行模拟的另一个步骤(该过程以迭代方式完成)。如果我从Simulink运行批处理文件,那么它将无法执行其他块的操作,因为它将等待程序性能结束 有什么办法解决吗?很难知道你想要什么。显而易见的是启动这两个程序 如果您的语言与大多数其他语言一样,您可

我正在为一个外部程序开发Simulink工具箱,问题是我需要并行运行这两个程序。我可以从MATLAB运行调用批处理文件的外部程序,但该程序设计为在模拟的每个步骤中等待Simulink提供的信息。程序检索信息,对其进行处理,并向Simulink发送报告,以运行模拟的另一个步骤(该过程以迭代方式完成)。如果我从Simulink运行批处理文件,那么它将无法执行其他块的操作,因为它将等待程序性能结束


有什么办法解决吗?

很难知道你想要什么。显而易见的是启动这两个程序

如果您的语言与大多数其他语言一样,您可以将shell发送到cmd并返回,而无需等待

cmd /c start "Window Title" "c:\some folder\some file.bat" 
但是,您可以在命令提示符下或批处理文件中启动这两个程序(因为两行就可以了,请丢失符号)。如果matlab不在当前文件夹中,我用来启动matlab的格式会在注册表的apppaths键中查找matlab路径

start matlab&start "" "c:\some folder\some file.bat"
如果在“开始”中的任何位置使用引号,则必须在WindowTitle中输入引号。我在这批货的上面一行放了一张空白的。因为我在注册表中查找matlab,所以我不需要引号,所以我不需要麻烦指定windows标题

您也可以在不使用start的情况下键入命令提示符。如果matlab是一个GUI程序(一个不打开控制台窗口的程序),那么在命令提示符中键入它将启动它并返回(但不是在批处理文件中)。还必须告诉windows它在哪里

"c:\some matlab folder\matlab"
"c:\some folder\some file.bat"

程序是如何通信的?

您能给我们展示一种“流程图”吗?您的耦合模拟是如何工作的?