首页 文章

如何与MATLAB并行运行批处理文件?

提问于
浏览
0

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

如何解决它的任何想法?

1 回答

  • 0

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

    如果您的语言与大多数其他语言一样,您可以将其置于cmd并返回而无需等待 .

    cmd /c start "Window Title" "c:\some folder\some file.bat"
    

    但是你可以在命令提示符或批处理文件中启动这两个程序(因为两行很好 - 丢失了&符号) . 我用来启动matlab的格式在注册表的apppaths键中查找matlab路径,如果它不在当前文件夹中 .

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

    如果你在Start中的任何地方使用引号你必须放入WindowTitle . 我在批次上面放了一个空白的 . 因为我在注册表中查找matlab我不需要引号所以我没有打扰指定一个Windows Headers .

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

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

    该计划如何沟通?

相关问题