所以这段代码:
library(plyr)
library(doMC)
registerDoMC(cores=2)
x=1:100
llply(x, some_function, .parallel=TRUE)
Run Code Online (Sandbox Code Playgroud)
失败并出现如下错误:
__THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ ()
Run Code Online (Sandbox Code Playgroud)
当我从终端运行R时,错误消失.所以它是关于GUI的东西打破了它.不幸的是,我与合作者共享此代码,所以我不能要求他们从终端运行它.这个论坛帖子说看起来好像这个问题w/doMC后端来自我一直在寻找"/Applications/R.app/Contents/Resources/GUI- tools.R",但我并不是故意在R中这样做.应用程序.有没有办法解决这种冲突的行为?
我的Mac规格:还运行R GUI 2.13.1.OSX 10.7.1,带有64位R.app的doMC版本1.2.3.还有一台配备Intel Core 2 Duo的MB Pro 2.53
如果您想要真正的答案,请在 R-SIG-Mac 上询问;)。这与 GUI 工具无关,它与子进程中运行的 Cocoa 事件循环有关 - 有关 GUI 的警告,请参阅 ?multicore。您可能想要更新到更新的多核,这会禁用 GUI 中的事件循环(如果可能)。还要避免在您运行的代码中进行任何 Quartz 图形调用。
| 归档时间: |
|
| 查看次数: |
567 次 |
| 最近记录: |