Main Content

Python에서 MATLAB 함수를 비동기식으로 호출하기

이 예제에서는 Python®에서 MATLAB® sqrt 함수를 비동기식으로 호출한 이후에 제곱근을 가져오는 방법을 보여줍니다.

엔진은 기본적으로 MATLAB 함수를 동기식으로 호출합니다. 이 경우 MATLAB 함수가 완료된 경우에만 컨트롤이 Python으로 반환됩니다. 하지만 함수를 비동기식으로 호출할 수도 있습니다. 이 경우 MATLAB이 여전히 함수를 실행하는 동안에도 컨트롤이 즉시 Python으로 반환됩니다. 결과는 Python 변수에 저장되며, 함수가 완료된 후 이를 검사할 수 있습니다.

MATLAB 함수를 비동기식으로 호출하려면 background 인수를 사용하십시오.

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()을 호출하십시오.

참고 항목

|

관련 항목