首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Matlab引擎和disp()函数

Matlab引擎和disp()函数
EN

Stack Overflow用户
提问于 2013-10-09 18:01:35
回答 1查看 1.3K关注 0票数 1

我有一个脚本需要一些时间来执行。我使用Matlab在C++函数中启动它。为了监视脚本的执行,我想在其中添加一些disp('still alive')。但是,它不起作用,engOpen打开的matlab命令窗口中没有显示任何内容(是的,我确信脚本正在运行,因为我在执行过程中得到了输出文件)。

知道我怎么能让它起作用吗?

此外,是否有可能在脚本运行时中使用engOutputBuffer将这样的心跳输入到engOutputBuffer命令中?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2013-10-11 13:41:05

使用engOutputBufferengEvalStringprintf将输出输出到控制台(到Windows命令窗口,而不是MATLAB命令窗口)。

如果要监视脚本的进度,可以在C代码中打开m-script文件,并使用engEvalString逐个命令执行它。在每个执行命令之后,printf缓冲区内容到控制台窗口。这种方法的主要问题是如何在打开的m-script文件中分离(解析)命令,但是如果您期望得到某种类型的脚本,则可以这样做。

实现消息监视的另一种方法是在engOutputBuffer之后打开一个线程,该线程将检查缓冲区的内容,并在执行在主线程中启动的m脚本的同时执行printf

查看mathworks (页面底部附近)的示例,了解如何将MATLAB消息输出到控制台(Windows命令)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19279366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档