2011-03-14 50 views
1

我正在開發一個java代碼,它使用通過調用jar文件在matlab中編寫的某些代碼。線程Matlab代碼

由於有許多功能上下工夫..會好於Java的一個單獨的線程,每個MATLAB函數調用相關的關聯,因爲它強烈處理需要處理的相當長的時間......

哪一個會更好地構建代碼? 使用多個線程或調用簡單的函數調用?

Thanx in Advance .. :)

+1

這聽起來像你可以平分執行到多個進程。如果是這種情況,那麼這將是更簡單的方法。當你使用不同的線程時,你不得不擔心內存的哪些部分是共享的,哪些不是,那(尤其是調試它)可能是一個真正的痛苦。更詳細的答案需要你更詳細地解釋你的問題。 – Paul

回答

2

除非您使用Parallel工具箱,否則多線程無法正常工作。 Matlab在單線程中執行其計算,並且不允許併發請求。調用你的jar文件將會阻塞,直到Matlab完成前面的調用。

解決這個問題的唯一方法就是通過Runtime.exec()將每個函數作爲一個獨立的進程執行,並使用RMI與新進程進行通信。