ls(envir=spdep:::.spdepOptions)
if (require(parallel, quietly=TRUE)) {
nc <- max(2L, detectCores(logical=FALSE), na.rm = TRUE)-1L
nc
# set nc to 1L here
if (nc > 1L) nc <- 1L
#nc <- ifelse(nc > 2L, 2L, nc)
coresOpt <- get.coresOption()
coresOpt
if (!is.na(nc)) {
invisible(set.coresOption(nc))
print(exists("moran.mc"))
if(.Platform$OS.type == "windows") {
# forking not permitted on Windows - start cluster
print(get.mcOption())
cl <- makeCluster(get.coresOption())
print(clusterEvalQ(cl, exists("moran.mc")))
set.ClusterOption(cl)
clusterEvalQ(get.ClusterOption(), library(spdep))
print(clusterEvalQ(cl, exists("moran.mc")))
clusterEvalQ(get.ClusterOption(), detach(package:spdep))
set.ClusterOption(NULL)
print(clusterEvalQ(cl, exists("moran.mc")))
stopCluster(cl)
} else {
mcOpt <- get.mcOption()
print(mcOpt)
print(mclapply(1:get.coresOption(), function(i) exists("moran.mc"),
mc.cores=get.coresOption()))
invisible(set.mcOption(FALSE))
cl <- makeCluster(nc)
print(clusterEvalQ(cl, exists("moran.mc")))
set.ClusterOption(cl)
clusterEvalQ(get.ClusterOption(), library(spdep))
print(clusterEvalQ(cl, exists("moran.mc")))
clusterEvalQ(get.ClusterOption(), detach(package:spdep))
set.ClusterOption(NULL)
print(clusterEvalQ(cl, exists("moran.mc")))
stopCluster(cl)
invisible(set.mcOption(mcOpt))
}
invisible(set.coresOption(coresOpt))
}
}
Run the code above in your browser using DataLab