вызовите мемлафайл Matlab с помощью subsasgn - PullRequest
0 голосов
/ 15 ноября 2018

У меня есть большой объект memmapfile для записи в Matlab, к которому я хочу получить доступ и изменить.

Доступ

Если я попытаюсь:

mmap.Data.bit(1)

или

subsref(mmap.Data.bit, substruct('()', {1}))

Я получаю то же значение (0).

Изменить

Если я попытаюсь:

mmap.Data.bit(1) = 1

, я могу назначить это значение очень быстро, но еслиЯ пытаюсь:

[~] = subsasgn(mmap.Data, substruct('.', 'bit', '()', {1}))

Matlab перестает отвечать и никогда не заканчивает строку.

В чем проблема с subsasgn и mmap?

1 Ответ

0 голосов
/ 15 ноября 2018

То, что на самом деле пытался сделать Matlab, - это загрузить все содержимое файла.

Правильная строка:

 [~] = subsasgn(mmap, substruct('.', 'Data', '.', 'bit', '()', {1}))
...