我正在使用 Boost Log 来构建我的日志系统。在我的程序中,有许多 DLL 组件,这是构建程序的常用方法。
我有一个困惑。在每个 dll 中,我需要初始化它自己的日志系统并写入它的特定日志文件,否则 DLL 无法输出日志消息。所以在我的程序中,我必须多次初始化日志。我在Dll 入口点初始化日志:
switch( fdwReason )
{
case DLL_PROCESS_ATTACH:
// Initialize once for each new process.
// Return FALSE to fail DLL load.
break;
这样,如果有五个dll,我需要用不同的日志文件初始化日志五次,这是一个巨大的工作量。
是否可以在整个 dll 中初始化一次日志?我想在每个 dll 中共享日志系统。
或者有没有其他类型的日志系统支持这个?