2

我知道 R 因为版本 2.14.0 随parallel包一起提供,所以你可以这样做:

library(parallel)

cl <- makeCluster(2) # parallelize by 2

res <- clusterApply(cl,1:20,
                    function(x)
{
   # long stupid elaboration...
   currmean <- 0
   count <- 0
   for(a in 1:100){
     for(b in 1:100){
       for(c in 1:100){
           currmean <- currmean + 1/(count+1) * (x - currmean)
           count <- count + 1
       }
     }
   }
   return(currmean)
}
)

问题是以下方法(至少在 Windows 上)需要防火墙权限,因为它为每个集群打开一个套接字,但这有时是不可能或困难的(例如在某些生产环境中)。

是否有不需要防火墙权限的替代包/方式,例如依赖线程的东西?

4

0 回答 0