Удаление зомби-процессов с помощью параллельного пакета

После того, как я некоторое время поигрался с параллельным пакетом R на моей машине на базе Debian, я все еще не могу найти способ удалить все дочерние процессы зомби после вычисления.

Я ищу общее решение, не зависящее от ОС.

Ниже приведен простой сценарий, иллюстрирующий проблему для двух ядер:

library(parallel)
testfun <- function(){TRUE}

cltype <- ifelse(.Platform$OS.type != "windows", "FORK", "PSOCK")
cl <- makeCluster(2, type = cltype)
p <- clusterCall(cl, testfun)
stopCluster(cl)

К сожалению, этот сценарий оставляет в таблице процессов два зомби-процесса, которые уничтожаются только при завершении работы R.

16
задан user625626 28 February 2012 в 17:39
поделиться