R没有响应中断停止进程的请求

raf*_*ira 20 r rstudio

我不得不经常运行一个需要花费大量时间的函数,我需要在完成之前中断处理.为此,我点击Rstudio控制台顶部的"停止"红色标志,这通常会在下面返回以下消息:

R没有响应您的中断处理请求,因此要停止当前操作,您可能需要完全终止R.

终止R将导致您的R会话立即中止.将中断活动计算,并且将丢弃未保存的源文件更改和工作空间对象.

你想现在终止R吗?

问题是我点击"否"然后Rstudios似乎完全冻结.我想知道其他人是否面临类似问题,是否有办法解决这个问题.

有没有办法在不丢失工作区中的对象的情况下快速停止Rstudio中的进程?

Kev*_*hey 15

不幸的是,RStudio目前无法在几种情况下中断R:

  1. R正在执行外部程序(例如,您无法中断system("sleep 10")),

  2. R正在执行(例如)C/C++库调用,该调用不为R提供检查中断的机会.

在这种情况下,唯一的选择是强制终止R进程 - 希望这可能会在未来的RStudio迭代中发生变化.

  • 不幸的是,很多 R 代码实际上是 C 或 Fortran 代码,而 Ctrl+C 通常不起作用。即使像使用 rect() 绘制单个矩形这样的事情也调用 C 代码并且无法停止。这是一个严重的设计限制。 (4认同)