windows下静态编译log4cplus遇到的内存泄露问题

需求是这样的,我希望在我的sdk里集成log4cplus库,这样对外发布时就只带我们自己的库,没有第三方的库。

于是把log4cplus编译成了静态库,然后在我们的dll里使用这个静态库,测试时发现程序运行有内存泄露。

在网上查询发现,在log4cplus被编译为静态库后,再多线程使用时,必须在线程结束时调用log4cplus::threadCleanup();

不然就会有内存泄露,原因时log4cplus在线程里使用了线程本地变量,需要对其进行释放!!

windows下静态编译log4cplus遇到的内存泄露问题

wilx应该时log4cplus的维护者,这是他的回答

https://github.com/log4cplus/log4cplus/issues/239