问题描述
我需要监控脚本 A
的 RAM 使用情况。因为我还需要收集额外的数据,所以我想在 A 本身中这样做。
我的计划是:
library("future")
monitoring = T
monitor = function()
{
resultDF = data.frame(time=NULL,freeMemKB=NULL)
while(monitoring)
{
freeMemKB = getFreeMemoryKB()
time = as.numeric(Sys.time())
resultDF = rbind(resultDF,data.frame(time=time,freeMemKB=freeMemKB))
}
return(resultDF)
}
res %<-% monitor()
# ...
# ... Now,do some heavy workload ...
# ...
monitoring = F
# do something sensible with the RAM data,like writing it to a file
write.table(res,filename,...)
但是,当标志设置为 false 时,monitor
不会停止执行。根据文档:https://cran.r-project.org/web/packages/future/vignettes/future-1-overview.html(全局部分),这种行为似乎是预期的情况。尽管如此,我仍然可以使这种方法以某种方式起作用(也许强制重新加载全局变量?!)还是有另一种更适合我可以使用的包/方法?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)