首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当MATLAB函数在parfor内产生警告时,如何避免内存泄漏?

当MATLAB函数在parfor内产生警告时,如何避免内存泄漏?
EN

Stack Overflow用户
提问于 2017-03-30 15:44:18
回答 2查看 697关注 0票数 2

我使用matlab R2015b为Win Server 2012操作系统与本地共享。当parfor-循环中的函数生成警告时,本地工作人员的内存泄漏。另外,在parfor循环结束后,内存不会释放。示例:

代码语言:javascript
复制
x = rand(78, 1);
for j = 1:100
    parfor i = 1:1000
        [~, z] = kpsstest(x);
    end
end

函数kpsstest生成警告:

警告:测试统计数据#1下面列表的临界值:最大p值= 0.100报告.在kpsstest>getStat (第632行)中为kpsstest (第291行)

即使当我使用构造时,内存也会泄漏给工作人员:

代码语言:javascript
复制
   warning('off', 'econ:kpsstest:StatTooSmall');
   pctRunOnAll warning('off', 'econ:kpsstest:StatTooSmall')

启动工作人员的内存:

执行代码后的内存:

当parfor中的函数生成警告时,如何避免内存泄漏?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-31 08:19:53

这个问题就是这个错误报告的主题。如果您能够升级到R2017a,这是最简单的解决方法。

票数 2
EN

Stack Overflow用户

发布于 2017-03-30 22:08:21

嗯,也许这不是最干净的方法,但是您可以关闭并行池,请参阅这里

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43122489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档