Инициализируйте библиотеку функции MATLAB асинхронно
FutureResult<std::shared_ptr<MATLABLib>> initMATLABLibraryAsync(MATLABApplication & application, const std::u16string & ctfPath)
Инициализируйте библиотеку функции MATLAB® асинхронно, получить указатель на недавно инициализированный C++ совместно использовало библиотеку, если инициализация завершена.
MATLABApplication & application | Объект MATLAB Application возвращен в |
const std::u16string & ctfPath | Имя библиотеки. Если путь не использован, он принят, чтобы быть в текущей папке. Для получения информации о том, как использовать |
|
|
| Никакая библиотека с именем, найденным на разделяемом пути к библиотеке. |
matlab::cpplib::LibInitErr | Библиотека не может быть инициализирована. |
MATLABLibrary Асинхронно, и ожидайте, пока это не инициализируетauto future = mc::initMatlabLibraryAsync(matlabApplication,
mc::convertUTF8StringToUTF16String("libdoubleasync.ctf"));
if (!future.valid()) {
throw std::future_error(std::future_errc::no_state);
}
std::future_status status;
do {
status = future.wait_for(std::chrono::milliseconds(200));
if (status == std::future_status::timeout) {
std::cout << "Library initialization is in progress.\n";
} else if (status == std::future_status::ready) {
std::cout << "Library initialization has completed.\n";
}
std::this_thread::sleep_for(std::chrono::seconds(1));
} while (status != std::future_status::ready);
auto lib = future.get();
matlab::cpplib::convertUTF16StringToUTF8String | matlab::cpplib::convertUTF8StringToUTF16String | matlab::cpplib::initMATLABApplication | matlab::cpplib::initMATLABLibrary | matlab::cpplib::MATLABLibrary::feval | matlab::cpplib::MATLABLibrary::fevalAsync | matlab::cpplib::MATLABLibrary::waitForFiguresToClose | matlab::cpplib::runMain