时间:2021-07-01 10:21:17 帮助过:2人阅读
# 生成2个集群,多少个集群结合本地机器硬件配置和自己需要
> cl <- makeCluster(2)
# 注册多线程,个人理解,parallel包应该是声明在后端开启多核处理模式,让硬件准备环境,分配资源
> registerDoParallel(cl)
# %dopar%是foreach包的语法格式,表示多线程运行.
# foreach默认返回一个list,也可以指定一个函数,在线程处理完成后直接对结果进行rbind,sum等组合操作。更多查看?foreach
> qdata <- foreach(i=1:2) %dopar% { if (i == 1) conn <- connectdb_1() else conn <- connectdb_2()
re <- dbGetQuery(conn, query) dbDisconnect(conn)
return(re) } # 关闭集群 > stopCluster(cl)
[R语言]foreach和doParallel包实现多个数据库同时查询
标签: