В пакете R, над которым я работаю, есть функции (например, function1
), которые полагаются на вспомогательные функции (например, h_function1
и h_function2
) в моем пакете. Я распараллеливаю, чтобы многократно вызывать function1
в другой функции в моем пакете.
В настоящее время в моем пакете я использую код
parallel::clusterExport(cl, varlist=c("h_function1", "h_function2"), envir=environment())
parallel::parSapply(X=1:100, FUN=function1, cl=cl)
где cl
— кластер из параллельного пакета, переданного в функцию. Однако это предполагает, что вспомогательные функции h_function1
и h_function2
загружаются из моего пакета в локальную среду, что может быть неверным для некоторых пользователей.
Как можно гибко экспортировать функции в кластер? Можно ли экспортировать все функции пакета по имени пакета?