r - RDCOMClient 日志文件
问题描述
我一直在使用 RDCOMClient 与供应商软件进行交互。在大多数情况下,它运行良好。然而,最近,我需要循环执行许多操作(数百个)。我遇到了 RDCOM.err 文件增长到非常大(很容易 GB)的问题。这个文件放在 C: 中,没有明显的选项可以改变它。有什么方法可以抑制这个输出或为文件指定另一个位置吗?我不需要文件中的任何输出,因此最好抑制它。
编辑:我试图添加到我的脚本 afile.remove
但 R 已锁定文件。我可以释放锁的唯一方法是重新启动 R。
谢谢。
解决方案
将权限设置为只读将是我建议的技巧。
一种稍微优雅一点的方法是在 src/RUtils.h 中将包中的一行 C 代码编辑
\#define errorLog(a,...) fprintf(getErrorFILE(), a, ##__VA_ARGS__); fflush(getErrorFILE());
为
\#define errorLog(a, ...) {}
但是,我在 github 上对包进行了一些简单的更新,添加了一个 writeErrors() 函数,可以用来切换是否写入错误。因此,这允许动态打开和关闭它。因此
library(RDCOMClient)
writeErrors(FALSE)
将关闭错误记录到文件。
推荐阅读
- visual-studio-code - 如何使用 VScode“环绕”扩展定义自定义片段
- c# - 从重复项中获取最大日期行并使用 linq 删除列表中的重复项
- c# - 尝试激活服务时无法解析类型“System.Lazy`1[System.Net.Http.IHttpClientFactory]”的服务
- google-sheets-formula - IMPORTXML 值返回的价格不是数字 - 需要帮助才能转换
- api - Google youtube api 扩展配额
- python-3.x - 如何将两个可能不同的 sqlite3 列表与综合列表进行比较并添加新值?
- reactjs - 下一个 js 从 Json 的特定项目中获取道具
- python - 根据列表重命名列
- python - R 表的 python 等效项(iris$Species)
- c++ - 有没有办法为现代 OpenGL 中的每个键回调设置随机位置?