yanlinlin82 这倒没注意过,貌似还真是个问题。 不过就我做软件开发的经验,一旦程序转入某段C开发的函数过程,那控制权就完全由这段过程来接管了,包括各种资源的分配与释放。如果这个过程中存在死循环,那么只有结束进程才能将相关资源释放。即使在开发过程中,调用者专门启动一个线程来执行该过程,而后通过中止线程的方式,虽然能够中止该死循环,但也无法真正释放相关资源。 比较保险的做法,一般会在这段C的过程中,首先设置响应Ctrl+C信号,一旦收到信号,让其主动跳出循环并释放资源。难道说,在写提供给R调用的函数时,也应该如此么?
ryusukekenji [quote]引用楼主tonyfels于2009-11-10 22:01发表的 有没有人碰到过CRTL+C也无法中止的命令么 : 发现貌似凡是调用了C的函数 使用^C中止都无反应耶。。。。。。。。。。 这种情况真是无奈啊,必须终止掉R进程才行么? ....... [/quote] 点击键盘上的左上角 “Esc” 不能中止吗?