开源日志系统log4cplus(链接)

开源日志系统log4cplus(链接)

开源日志系统log4cplus(一) 简介、下载、 安装、使用前的配置
开源日志系统log4cplus(二) 基本使用
开源日志系统log4cplus(三) 如何控制输出消息的格式 (Layout)
开源日志系统log4cplus(四) 如何将log记录到文件
开源日志系统log4cplus(五) 优先级控制、基于脚本配置来过滤log信息
开源日志系统log4cplus(六) 一些可以改进之处
开源日志系统log4cplus(七)  NDC、线程 、套接字

按照以上方法使用时,单线程中使用没有问题,但多线程时,运行时,在Logger::getIntXXX时出现错误:
ONLYONCEXXXX的错误。

调用流程如下:
Dlg的初始化函数中:
char szlogname[] = "log1";
做好Logger的初始化工作,目的为一个文件。

在线程中:
   char szlogname[] = "log1.tid";     // 每个线程的tid不同
Logger::getInstXXXX;
……

在线程中,会调用到一个Dlg的函数:
   char szlogname[] = "log1.tid";     // 这个tid等于调用线程的tid
Logger::getInstXXXX; // 这里出错!!!!!一运行到这里,就进入Debug模式。
……

不知道是什么地方出现了问题???

你可能感兴趣的:(开源日志系统log4cplus(链接))