matlab - 用 subsasgn 调用 Matlab 的 memmapfile
问题描述
我有一个要访问和修改的大型可写 Matlab 的 memmapfile 对象。
使用权
如果我尝试:
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 有什么问题?
解决方案
Matlab 实际上试图做的是加载文件的全部内容。
正确的行是:
[~] = subsasgn(mmap, substruct('.', 'Data', '.', 'bit', '()', {1}))
推荐阅读
- javascript - 如何在 JavaScript 中将像素转换为厘米
- javascript - 如何禁用和更改 foreach 循环中单个条纹按钮的文本
- python-3.x - 在 Python 中创建可迭代的鼠标单击事件?
- elasticsearch - Elasticsearch 前缀查询不适用于日期
- unix - 匹配精确字符串并在 UNIX 中仅返回该行
- node.js - 如何使用Sharp包压缩PNG文件?
- jquery - jQuery formBuilder 如何在 XML 中显示表单数据?
- r - 试图将我的矩阵转换为 R 中的数字
- ruby-on-rails - ActionDispatch::Http::UploadedFile 到 Active Storage Rails 5.2 的数组
- angular - 如何在另一个桌面的本地系统上托管/设置 Angular 4 应用程序?