2013-10-31 49 views
3

我將爲我們的應用程序添加Log4cplus。我們的應用程序是用C++編寫的,它是多線程的。我想使用Log4Cplus RollingFileAppender。是Log4cplus RollingFileAppender異步與否

我知道Log4Cplus是從Java Log4j派生的。由於我不太瞭解Java,因此我不知道Log4j。

我的問題如下,

  1. 是Log4Cplus RollingFileAppender進行同步或不?。那AsyncAppender有什麼用?
  2. RollingFileAppender線程安全嗎?
  3. 我是否需要使用RollingFileAppender處理線程安全代碼,還是內置?

也可以指出我的一些例子多線程rollingfileappender的一些例子嗎?

回答

2

RollingFileAppender是線程安全的,它不是異步的。爲了獲得異步性,您必須圍繞它包裝AsyncAppender。與單線程相比,使用多線程中的RollingFileAppender沒有什麼特別之處。在Appender::doAppend()中爲所有appender完成同步。