log4cplus初始化成功之後,把自定義輸出裝置新增到logger中,當使用者向logger中輸出資訊時,logger會遍歷自身的所有輸出裝置,
並按輸出裝置上的指定格式輸出資訊。
log4cplus是執行緒安全的,因此在多執行緒下可以放心使用
在小工具編寫的過程中,作者遇到了esp
crash問題,在網上了找了好久的資料,也沒搞好,後來當然是解決了,原因:我的小工具是用vs2013寫的,log4cplus庫使用vs2010編
譯的,後來用vs2013編譯了下log4cplus,小工具一切正常;不過log4cplus自帶的事例**卻開始crash了(vs2010下正
更新乙個widget,當執行緒w關閉時,關閉掉所有由w建立的子執行緒r,然後關閉serversocket。r執行緒接收的資料使用拋事件的方式傳遞給
widget,當然不是直接拋給widget,而是有乙個專門處理事件的執行緒,接收各種不同的事件,然後通過訊號槽,傳送到指定視窗,視窗更新到介面上。
效果如圖1所示
圖1主要的類說明:
1、工作者執行緒,監聽訊息事件
class messagelistening : public qthread
2、幫助工作者執行緒處理業務的物件,使用者監聽客戶端的連線請求
class work : public qobject
工作者執行緒
class workthread : public qthread
3、工作者執行緒,監聽訊息事件
class messagelistening : public qthread
4、伺服器端執行緒,負責和客戶端進行互動
class clientthread : public log4cplus::thread::abstractthread
5、小工具主視窗 負責接收並顯示日誌資訊
class debughelper : public qwidget
6、使用者列表,顯示當前連線的使用者+預設+建立的使用者
class ccuserlistwidget : public qtreewidget
8、日誌過濾資料來源 負責提供給檢視過濾後的資料,資料來源來自qstandarditemmodel
class ccsortfilterproxymodel : public qsortfilterproxymodel
9、日誌視窗 針對每個使用者new乙個
class cclogtablewidget : public qwidget
10、本地日誌載入建立 用於比對多個不同**的日誌
class ccloglistwidget : public qwidget
如果您覺得文章不錯,不妨給個打賞,寫作不易,感謝各位的支援。您的支援是我最大的動力,謝謝!!!
很重要--**宣告
奮鬥中的無名小卒。。。
很重要--**宣告
log4cplus使用 三 日誌重定向
效果如圖1所示 圖1 主要的類說明 1 工作者執行緒,監聽訊息事件 class messagelistening public qthread 2 幫助工作者執行緒處理業務的物件,使用者監聽客戶端的連線請求 class work public qobject 工作者執行緒 class workthr...
開源日誌系統 log4cplus 三
本文介紹了三種控制輸出格式的布局管理器的概念和使用情況,通過掌握這些知識,可以更有效地控制log系統輸出盡可能貼近你需求的資訊來。如何控制輸出訊息的格式 前面已經講過,log4cplus通過布局器 layouts 來控制輸出的格式,log4cplus提供了三種型別的layouts,分別是 layou...
開源日誌系統log4cplus 三
本文介紹了三種控制輸出格式的布局管理器的概念和使用情況,通過掌握這些知識,可以更有效地控制log系統輸出盡可能貼近你需求的資訊來。如何控制輸出訊息的格式 前面已經講過,log4cplus通過布局器 layouts 來控制輸出的格式,log4cplus提供了三種型別的layouts,分別是 layou...