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