设置:
我有created个名为“参与者”的Matlab 句柄类,用于读取和处理某些研究数据。我创建了该对象的多个实例,并将它们保存到硬盘上。没问题,我还检查了有问题的实例,以确保它在Matlab中可以正常工作。实例似乎没有任何错误。
问题
但是,在某些情况下,出于我的明确原因,Matlab陷入了写入磁盘的无限循环中。通过查看.mat字段输出的修改日期(每分钟不断变化)以及我的Matlab实例的运行速度大大降低,就可以明显看出这一点。
创建参与者的代码是
myparticipant = participant([basedir ,p_folder{p_num}]);
尝试过的方法
我已经通过右键单击工作区将其保存到磁盘,这会导致上述问题。
使用保存功能,我得到:
save('test.mat', 'myparticipant')
Error using save
Error closing file test.mat.
The file may be corrupt.
当然不会加载。
任何见识都会受到赞赏,因为我不确定如何开始着手解决此问题。
答案 0 :(得分:0)
感谢excaza的评论,我得以发现此问题。正如我在评论回应中所解释的那样,问题在于因为我使用的是句柄类,所以工作内存中显示的数据量很小。但是,我的数据大小实际上大于2gb。在这种情况下,您必须使用Matlab的“ -V7.3”关键字保存到文件中!加那个标志对我有用。