r-如何在multiplyr中设置超时



我在使用multidplyr时不一致地得到以下错误(即,对于相同的数据,有时我得到错误,有时没有(:

rs_init错误(self、private、super、options、wait、wait_timeout(:无法启动R会话,超时

我的设置看起来像:

list1 <- list() 
for (i in 1:500){
while(TRUE){
test1 <- try(df %>% 
group_by(id) %>% 
recursive_func_c())
if(!is(test1, 'try-error')) break
}
list1[[i]] <- test1
}

其中recursive_func_c是一个调用的函数

cluster <- multidplyr::new_cluster(7)

据我正确理解,多线程集群由callr创建的多个R进程组成。我收到的错误消息似乎来自callr包。为了调试,我想在multidplyr中为callr设置更长的超时时间。这可能吗?谢谢你的提示。

认为这个问题在这里得到了解决:https://github.com/tidyverse/multidplyr/issues/97

15秒对于我的设定来说可能太短了。

如果你面临同样的问题,你可以尝试用trace(new_cluster, edit=TRUE)临时更改new_cluster()wait_timeout(更多关于通用功能修改的信息,请点击此处:修改包功能(

60秒似乎对我有用。

相关内容

  • 没有找到相关文章

最新更新