编程语言
首页 > 编程语言> > 托管/非托管应用程序的良好日志记录库?

托管/非托管应用程序的良好日志记录库?

作者:互联网

对于这种情况,您建议使用哪种日志记录库或方法:

>我们希望能够同时记录托管和非托管代码
>对于非托管代码,实现不应回溯到托管代码,因为这可能导致我们的非托管线程在垃圾回收期间被“捕获”.
>性能是一个问题

NLog提供了一个“ C” api,但是根据其托管实现来实现它.

那里的许多C日志记录库(rlog,glog)都依赖于宏的预处理,并且不经过大量修改就不适合使用.NET进行包装.

我想我正在寻找具有本机/非托管日志记录核心的东西,但是还需要一个不错的.NET托管api.是否存在?如果不存在,最接近的是什么?

后续行动-感谢您提及log4net的回复.我认为Log4Net和NLog都可以在一个纯托管应用程序中正常运行,但是-…-我被要求构建的应用程序在后台线程上具有非托管I / O,这绝对不能被垃圾回收所阻止.如果非托管的c代码必须调用“向上”到托管的记录器中,则有可能在进行垃圾收集时冻结200甚至2000毫秒.这就是为什么我要寻找一个处于非托管状态的库. -戴夫

解决方法:

Pantheios可能满足您的要求.它是开源的.

标签:logging,c,net,c-4
来源: https://codeday.me/bug/20191210/2103713.html