2013-06-12 93 views
2

我在實時環境中構建需要高響應時間的應用程序。我知道有三種方法從C#調用MATLAB:將MATLAB與C集成#

  1. 使用MATLAB引擎COM自動化 在MATLAB創建
  2. Ç共享庫使用編譯器
  3. 使用生成器.NET在MATLAB創建
  4. .NET程序集

這些方法在速度(執行時間)方面有什麼區別?任何關於方法的相對安全性的意見也將被讚賞。

感謝

回答

2

下面是一些提示您的問題

COM方法 該解決方案是相當緩慢的,因爲COM類型的交換

動態數據交換 動態數據交換是一個很老但功能強大的Windows服務可讓應用程序進行通信和交換數據

C API 直接訪問MATLAB C API是在性能和​​功能方面的最佳解決方案,只需使用P/Invoke和一些不安全的指針操作即可。

你可以閱讀更多http://www.codeproject.com/Articles/5468/1-2-3-ways-of-integrating-MATLAB-with-the-NET

希望它會有所幫助。

+0

感謝您的回覆。我已經閱讀過這篇文章。它很好地解釋了每種方法及其用法。如果我們需要使用Matlab編譯器來構建.Net的程序集,那麼它可以直接從代碼中引用呢?那我提到的第三種方法呢? –

+0

它在這裏提到http://stackoverflow.com/questions/5901664/calling-a-matlab-function-from-c-sharp – Microtechie

+0

「MATLAB C API是最好的解決方案...」你有什麼事實來支持這個? – KronoS