一種高效的多線程日志寫入方法
基本信息
申請(qǐng)?zhí)?/td> | CN201410103710.7 | 申請(qǐng)日 | - |
公開(公告)號(hào) | CN103885726B | 公開(公告)日 | 2017-07-21 |
申請(qǐng)公布號(hào) | CN103885726B | 申請(qǐng)公布日 | 2017-07-21 |
分類號(hào) | G06F3/06(2006.01)I;G06F11/34(2006.01)I | 分類 | 計(jì)算;推算;計(jì)數(shù); |
發(fā)明人 | 鄒國(guó)衛(wèi) | 申請(qǐng)(專利權(quán))人 | 東藍(lán)數(shù)碼有限公司 |
代理機(jī)構(gòu) | - | 代理人 | - |
地址 | 315000 浙江省寧波市鄞州區(qū)啟明路818號(hào)14幢108號(hào)303室 | ||
法律狀態(tài) | - |
摘要
摘要 | 本發(fā)明涉及一種高效的多線程日志寫入方法,使用到供應(yīng)用程序使用的接口,并生成日志信息的前端和負(fù)責(zé)把日志消息寫入到本地文件的后端;步驟1、初始化所述前端的緩沖區(qū)和所述后端的緩沖區(qū);步驟2、所述前端負(fù)責(zé)往所述前端的緩沖區(qū)填日志消息;步驟3、所述后端將后端的緩沖區(qū)的日志數(shù)據(jù)寫入本地文件中;步驟4、當(dāng)所述前端的緩沖區(qū)寫滿后,交換所述前端的緩沖區(qū)和所述后端的緩沖區(qū),讓所述后端將其緩沖區(qū)的數(shù)據(jù)寫入本地文件,而所述前端往其緩沖區(qū)填入新的日志消息,如此往復(fù)。本發(fā)明方法可以每秒寫幾千上萬(wàn)條日志的時(shí)候沒(méi)有明顯的性能損失、能應(yīng)對(duì)一個(gè)進(jìn)程產(chǎn)生大量日志數(shù)據(jù)的場(chǎng)景、不阻塞正常的執(zhí)行流程以及在多線程程序中,不造成鎖爭(zhēng)用等。 |
