c++ - Log4cplus RollingFileAppender 是否异步

标签 c++ logging log4cplus

我要为我们的应用程序添加 Log4cplus。我们的应用程序是用 C++ 编写的,并且是多线程的。我想为此使用 Log4Cplus RollingFileAppender。

我知道 Log4Cplus 源自 Java Log4j。因为我不太了解Java,所以我对Log4j一无所知。

我的问题如下,

  1. Log4Cplus RollingFileAppender 是否异步?那么 AsyncAppender 有什么用呢?
  2. RollingFileAppender 线程安全吗?
  3. 我需要使用 RollingFileAppender 处理线程安全代码还是内置的?

还有人可以给我一些多线程 rollingfileappender 的例子吗?

最佳答案

RollingFileAppender 是线程安全的,它不是异步的。要获得异步性,您必须将 AsyncAppender 包裹在它周围。与单线程相比,从多线程使用 RollingFileAppender 没有什么特别之处。在 Appender::doAppend() 中对所有 appender 进行同步。

关于c++ - Log4cplus RollingFileAppender 是否异步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19699956/

相关文章:

java - 如果静态类被模拟出来,为什么 PowerMock 会尝试加载 server.xml 文件?

log4cplus - 如何防止日志消息中出现 log4cplus 日志消息?

c++ - 如何为 log4cplus 创建自定义布局

c++ - "Grow"动态数组函数产生错误

c++ - 在实现文件中使用指令

c++ - 我如何实现简单的 boost.asio 多播发送器?

linux 尾命令

c++ - C++中的模板成员函数重载和多重继承

python - 记录 TCP 套接字事件

c++ - 为 Windows x64 构建 log4cplus