从 Python 以异步方式调用 MATLAB 函数
此示例说明如何从 Python® 异步调用 MATLAB® sqrt
函数,并稍后检索平方根。
默认情况下,引擎同步调用 MATLAB 函数。仅当 MATLAB 函数完成时,控制权才会返还给 Python。但是,引擎也可以异步调用函数。当 MATLAB 仍在执行该函数时,控制权会立即返还给 Python。引擎将结果存储在 Python 变量中,可以在函数完成后检查该变量。
使用 background
参量异步调用 MATLAB 函数。
import matlab.engine eng = matlab.engine.start_matlab() future = eng.sqrt(4.0,background=True) ret = future.result() print(ret)
2.0
使用 done
方法检查异步调用是否完成。
tf = future.done() print(tf)
True
要在函数完成前停止执行,请调用 future.cancel()
。
另请参阅
matlab.engine.MatlabEngine
| matlab.engine.FutureResult