gpt4 book ai didi

c# - Matlab与.NET 4.0数据通信

转载 作者:太空狗 更新时间:2023-10-29 23:17:13 29 4
gpt4 key购买 nike

我有一个在 Matlab 中实现的算法,我计划将其部署为 DLL 以便与 .NET 项目集成。 .NET 项目是一个基于 GUI 的应用程序,其中一小部分包括显示从运行算法获得的结果。我目前遇到的问题是我需要显示中间结果。该算法非常复杂,会运行多次迭代(由用户选择),并且在每次迭代结束时,GUI 应使用当前数据进行更新。

我目前想到的最佳解决方案是让 Matlab 线程充当我将在 C# GUI 应用程序中启动的本地 tcp 服务器的 tcp 客户端。但是,我觉得这种方法效率低下。我想知道这是否可以通过其他方式实现。

最佳答案

首先,从你的问题来看,我猜你知道 Matlab builder NE .它允许您部署 .NET DLL。如果您不知道,请尝试一下。

关于您的选择:

1) 您可以将 .NET 对象传递给您的 Matlab 代码,用作通信方式。创建此类的新实例,并将其作为输入发送到您的 Matlab 代码。 Matlab 代码将在每次迭代时调用 UpdateGui 逻辑。下面的例子是在C#

 class GuiUpdater{
public void UpdateGui(int param1,int param2){
//Do update logic here.
}
}

2) 将你的DLL编译为COM(在Matlab Builder NE中也可以),并使用COM通信。
3) 使用文件系统作为通信手段。在 Matlab 中写入文件,并在 .NET 中读取它。

关于c# - Matlab与.NET 4.0数据通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8813407/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com