Я работаю над проектом MATLAB, в котором я хотел бы, чтобы два экземпляра MATLAB работали параллельно и обменивались данными. Я назову эти экземпляры MAT_1
и MAT_2
. Более конкретно, архитектура системы такова:
MAT_1
последовательно обрабатывает изображения, считывая их одно за другим, используя imread
, и выводит результат для каждого изображения, используя imwrite
. MAT_2
считывает изображения, выводимые MAT_1
, используя imread
, и выводит результат где-то еще. Одна из проблем, которые, как мне кажется, мне нужно решить, - это следующее: гарантировать, что MAT_2
считывает изображение, выводимое MAT_1
, как только MAT_1
полностью закончит запись в него.
Мои вопросы:
flock
, но предоставляется непосредственно MATLAB и работает на нескольких платформах, например, Windows и Linux). Если нет, знаете ли вы о какой-нибудь сторонней библиотеке, которую я могу использовать для создания этого механизма в MATLAB? Почему мне требуются MAT_1
и MAT_2
для работы в параллельных потоках?:
Обработка, выполняемая в MAT_2
, в среднем медленнее (и больше) подвержены сбоям), чем MAT_1
, а вывод MAT_1
питает другие программы и процессы (включая проверку человеком), которым не нужно ждать, пока MAT_2
выполнит его работа.