开源日志系统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模式。
……
不知道是什么地方出现了问题???