@天下第九九八十一 強啊 居然還真有人拿去用了 哈哈
Duilib性能優(yōu)化——列表控件Duilib中本來就有列表控件CListUI,但是它不適用于數(shù)據(jù)量較大的情況: 每一個item都會在內(nèi)存中有對應(yīng)的控件實例,浪費內(nèi)存。 列表每一次layout都會處理全部的項...
@天下第九九八十一 強啊 居然還真有人拿去用了 哈哈
Duilib性能優(yōu)化——列表控件Duilib中本來就有列表控件CListUI,但是它不適用于數(shù)據(jù)量較大的情況: 每一個item都會在內(nèi)存中有對應(yīng)的控件實例,浪費內(nèi)存。 列表每一次layout都會處理全部的項...
最近工作中進(jìn)行項目模塊化,根據(jù)功能分類,將項目由一個整包拆分為一個個framework,各個framework之間相互依賴,涉及到動態(tài)庫和靜態(tài)庫相互依賴,這里寫篇摸索筆記,記...
簡單總結(jié),詳見參考資料。 引用計數(shù)的實現(xiàn)方式 引用計數(shù)是與對象綁定的,并且可能有多個shared_ptr綁定同一對象,為了達(dá)到同時更新多個shared_ptr的引用計數(shù),所以...
@永樂茶坊 特定機器才有問題嗎 先spy++看窗口能不能正常收到WM_MOUSE系列的消息
Duilib源碼解析——控件尋找鼠標(biāo)點擊了一個按鈕之后,是怎樣觸發(fā)到對應(yīng)的按鈕的事件的?首先,鼠標(biāo)點擊觸發(fā)一系列Windows消息,這里以WM_LBUTTONUP舉例說明消息處理過程:首先,windows消...
上次看了個某個瀏覽器的網(wǎng)址補全,感覺比較弱雞,所以想起來研究一下chromium是怎么實現(xiàn)這個地址匹配的。這個東西還是有點意思的,可以根據(jù)URL或title進(jìn)行匹配,輸入的單...
PE文件的內(nèi)容分為不同的塊/節(jié)(Section),塊中包含代碼或數(shù)據(jù),各個塊按頁邊界對齊,塊沒有大小限制,是一個連續(xù)結(jié)構(gòu)。PE文件不是作為一個整體被載入內(nèi)存的而是分節(jié)加載的。...
眾所周知chrome的web開發(fā)者工具也是基于web實現(xiàn)的,crx擴展可以實現(xiàn)自己的開發(fā)者工具擴展,例如圖中的adblock有開發(fā)的需要就有調(diào)試的需要,如果想對瀏覽器的F12...
主要翻抄自陳碩的書和博客條件變量只有一種正確使用的方式,幾乎不可能用錯。對于 wait 端:1.必須與 mutex 一起使用,該布爾表達(dá)式的讀寫需受此 mutex 保護(hù)。2....
Cookies這部分的源碼位于net/cookies與net/extras中,代碼量不算多的,但是感覺其中有點細(xì)節(jié),如果不是結(jié)合著對應(yīng)的需求去看,確實沒辦法把所有細(xì)節(jié)都看透,...
強引用、弱引用 強引用影響對象的引用計數(shù),進(jìn)而影響對象的生存期。弱引用不影響對象的引用計數(shù),在功能上類似于普通指針,但是弱引用能檢測到所引用的對象是否已經(jīng)被釋放,從而避免非法...
從base/task_scheduler/task_traits.h中的枚舉量TaskShutdownBehavior可以看到,chromium針對投遞的task在瀏覽器退出...
Duilib中本來就有列表控件CListUI,但是它不適用于數(shù)據(jù)量較大的情況: 每一個item都會在內(nèi)存中有對應(yīng)的控件實例,浪費內(nèi)存。 列表每一次layout都會處理全部的項...
基本語法就不談了。 值捕獲 值捕獲就相當(dāng)于在創(chuàng)建lambda對象時復(fù)制了一份所捕獲的變量; 如果以傳值的形式捕獲外部變量,那么,lambda 體不允許修改外部變量; 可以使用...
源碼位于base/memory/singleton.h首先平時很多資料都會講到雙檢測鎖(DCL)實現(xiàn)。但是DCL單例已經(jīng)被證明不是線程安全的,由于CPU的亂序執(zhí)行,導(dǎo)致ins...
首先,常量表達(dá)式的概念:在編譯期就可以計算出結(jié)果的表達(dá)式那么為什么要用常量表達(dá)式呢,用常量表達(dá)式會有什么好處:1.允許一些計算只在編譯時進(jìn)行一次,而不是每次程序運行時;2.編...
本篇分析base::SchedulerSequencedTaskRunner實現(xiàn)。SchedulerSequencedTaskRunner是SequencedTaskRunn...
以win32平臺下chromium62版本代碼為準(zhǔn)。base::TaskRunner類,主要有以下幾個實現(xiàn):base::MessageLoopTaskRunner,任務(wù)投放到...
為什么要三次握手不能兩次 為了防止已失效的連接請求報文突然又傳送到服務(wù)端,從而產(chǎn)生錯誤。例如client發(fā)出的第一個SYN沒有丟失,而是在某個網(wǎng)絡(luò)節(jié)點長時間滯留了,以致于延誤...