4

R6 类函数是匿名的,因此分析信息会丢失。例如:

library(R6)
library(proftools)

Test <- R6Class("Test",
  public = list(
    fn = function() pause(0.3)
  )
)
obj <- Test$new()

#
# Profile
Rprof(line.profiling=TRUE)
replicate(10, obj$fn())
Rprof(NULL)
png('profile-self.png')
plotProfileCallGraph(readProfileData(), score='self')
dev.off()

提供以下配置文件信息:

剖面图

如何有效地分析这些功能?

4

1 回答 1

1

如果您使用的是最新版本的 R-devel(自本次提交以来),它将输出obj$fn而不是<Anonymous>在分析数据中。这应该在 R 的下一个版本(3.3.0?)中。

于 2016-01-25T16:32:23.877 回答