0
当我使用ROracle
对R
执行查询时,有时查询似乎挂起,我无法停止做CTRL+C
或打ESC
。 有什么我可以做(Win7上R.2.15.2)停止查询并返回到R>
如何取消查询
当我使用ROracle
对R
执行查询时,有时查询似乎挂起,我无法停止做CTRL+C
或打ESC
。 有什么我可以做(Win7上R.2.15.2)停止查询并返回到R>
如何取消查询
一招我已经使用在过去不间断R代码里面是向parallel::mcparallel
通话中调用它。如果它挂起,我可以杀死分叉进程并继续进入主R进程。例如:
function.that.hangs <- function(...) system("while true; do echo hello; sleep 1; done")
# This might hang
result <- function.that.hangs(...)
# Do this instead, the run the function in a forked process.
p <- mcparallel(function.that.might.hang(...))
# This might still hang, but you can kill the stuck R process and it will return.
result <- mmcollect(p)[[1]]
(这个例子可能不使用CTRL + C停止你,但你的想法
=>它看起来不错,但我在Windows上这不是一个POSIX系统。所以我不能fork一个进程...(我可以吗?)。当我实例化Oracle客户端'oracle(interruptible = TRUE)'时,还有一个选项,但奇怪的是'CTRL-C'仍然不起作用 – statquant 2013-03-18 18:36:46
对不起,我相信并行软件包只是UNIX(POSIX?) – 2013-03-18 18:37:19
这就是我的理解(在Windows平行工作,但不支持并行化);)太糟糕了,在我们使用它的时候,你有没有对ROracle进行基准测试,以反映在SAS中运行相同的查询例如,它对我来说看起来很慢(但它很重要t是网络问题) – statquant 2013-03-18 18:40:39