我想知道当callr_function = NULL时会发生什么?这仅仅是环境中的问题/副作用吗?
主要是想知道,因为我传递的是相当大的时空数组(0.5到5 to ),并且通过saveRDS进行的调用序列化相当慢。
我考虑的两件事是派生callr并插入不同的保存函数,或者只是使用callr_function = NULL。
发布于 2021-10-13 17:54:23
通常,targets在一个新的、可复制的外部R会话中运行管道。callr_function = NULL只是说在当前的R会话中运行管道。我只推荐在调试时使用它,因为在严重的用例中,您可能会因为全局环境中更改的数据而意外地使某些目标无效。callr_function = NULL可能无助于解决内存过大的问题。为此,我建议为您的数据选择更有效的存储格式,例如tar_target(...,format = "feather")。您还可以尝试使用tar_option_set(memory =“瞬态”,garbage_collection = TRUE)以获得更好的内存效率。
https://stackoverflow.com/questions/69558291
复制相似问题