последствия использования callr_function = NULL в целевом пакете

Мне было интересно, что происходит, когда callr_function = NULL? Это просто проблемы с окружающей средой / побочные эффекты?

В основном интересно, потому что я передавал довольно большие пространственно-временные массивы (от 0,5 до 5 гигов), а сериализация callr через saveRDS довольно медленная.

Две вещи, о которых я думал, - это разветвление callr и добавление другой функции сохранения или просто использование callr_function = NULL.

1 ответ

Обычно targetsзапускает конвейер в новом воспроизводимом внешнем сеансе R. просто говорит запустить конвейер в текущем сеансе R. Я рекомендую это только для отладки, потому что в серьезных случаях использования вы можете случайно сделать недействительными некоторые цели на основе измененных данных в вашей глобальной среде. callr_function = NULLвероятно, не поможет решить проблемы с большой памятью. Для этого я рекомендую выбрать более эффективный формат хранения для ваших данных, например tar_target (..., format = "перо"). Вы также можете попробовать tar_option_set(memory = "transient", garbage_collection = TRUE) для повышения эффективности использования памяти.

Другие вопросы по тегам