#define L_(lvl) BOOST_LOG_USE_LOG_IF_LEVEL(g_l(), g_log_level(), lvl)
是否有可能包裝成一個boost ::功能<>對象這一個宏,可能如下(從升壓日誌庫)或一個函數指針,並將其粘貼到這樣的項目的隊列或向量中?
如果是這樣,我該怎麼做?
我想寫一個機制,我有1線程寫入日誌文件的所有日誌記錄,任何工作線程都需要能夠登錄到它,但依賴於活動日誌級別, d只想記錄配置爲記錄的內容。所以我會爲任何線程創建一個隊列,將日誌消息放在隊列中,然後使用專用線程將它們寫入各自的文件,以便在不需要大量日誌記錄時減慢我的程序速度。我想使用boost :: log庫,所以我必須使用這個宏,因爲這寫入到封面下的文件。
lvl
是您傳遞給此函數的日誌級別。它的用途是:L_(debug) << "some log text";
以及這個L_宏對它的日誌消息採用的流<<操作符呢?我應該使用一個函數並重載那個運算符<<? – 2010-12-15 14:29:40