首页 > 解决方案 > R中的最大堆栈大小

问题描述

R中的最大堆栈大小是多少?它依赖于机器吗?

我在 R-devel 邮件列表中读到需要重新编译 R 以增加最大堆栈大小,这让我认为存在硬编码限制。

我经常使用的以下递归模式提示了我的问题:

wait_for_con <- function(..., max_retry = 10) {
  if (max_retry <= 0) {
    stop("Failed to connect")
  }
  tryCatch(connect(...), 
           error = function(e) {
             cat("Could not connect: retrying in 1s")
             Sys.sleep(1)
             wait_for_con(..., max_retry = max_retry - 1)
           })
}

我想知道什么数量级max_retry会导致堆栈溢出而不是优雅的失败,因此这个问题。

标签: rstack-overflow

解决方案


推荐阅读