原创 MemoryCache學習

這裏(http://blog.csdn.net/wy5761/article/details/41869599)有對MemoryCache的整體介紹。本文說一說MemoryCache核心的部分。      MemoryCache是webk

原创 Web SQL Database

概要 Web SQL Database,中文一般翻譯爲“本地數據庫”,是一組網頁API,網頁可以利用來存儲數據在數據庫中,並通過各種SQL進行查詢。 Web SQL Database曾經在W3C推薦規範上,但The W3C Web Ap

原创 Chromium開發者生命週期

據此瞭解Chromium開發流程 常用git命令 開始工作 (下載代碼) $git pull --rebase && gclient sync 修改代碼,提交,測試 $git checkout -b -t my_new_feature o

原创 微信搜索

微信搜索實現記錄 去除title bar AndroiManifest.xml文件中添加如下代碼: <application android:theme="@style/Theme.AppCompa

原创 退出Android應用

怎麼樣退出我們的App呢?一般的做法是調用Activity.finish(),同時會觸發onStop(), onDestroy()。其實我們的程序並沒有真正退出,只是停止運行,進入後臺保存到內存中。可以通過長按Home健檢查。何時退出,一

原创 一個簡單的正則表達式匹配器

下面的代碼實現如下語法 字符  含義 c  匹配任意的字母c . (句點) 匹配任意的單個字符 ^  匹配輸入字符串的開頭 $  匹配輸入字符串的結尾 *  匹配前一個字符的零個或者多個出現 +  匹配前一個字符的1個或多個出現 ?  匹

原创 webkit加載

關於webkit加載的文章網上很多,各種類型、各種角度的都有,有的說的很細。我的體會是,光看那些文章收穫不大,可能看看就忘了。想要理解或記住些東西還是得親自跟蹤調試一下才行。 可以先通過瀏覽一些文檔來建立一個基本的概念,比一來就跟代碼要好

原创 webkit 子資源加載流程

        一個網頁由主文檔和子資源組成。主文檔描述網頁的框架,佈局。子資源是組成網頁的子元素,包括圖片、CSS、JS等。爲了顯示網頁,先要把資源加載到內存。加載就是指把需要的資源加載到內存這一過程。Webkit用到很多緩存機制,加

原创 Chromium學習指引

面對複雜如操作系統的一個工程,我們應該如何學習,學習什麼,從哪裏入手?下面是一篇學習指引: 關於Chromium code base,有許多需要學習的,宏觀層次比如:進程及其相互之間的關係,IPC如何工作,URL加載流程;微觀層次比如:智

原创 Chromium線程模型、消息循環

多線程的麻煩 多線程編程是一件麻煩的事,相信很多人深有體會。執行順序的不確定性,資源的併發訪問一直困擾着衆多程序員。解決多線程編程問題的方法分爲兩類:一是對併發訪問的資源直接加鎖;二是避免併發訪問資源;Chromium採用第二種思想來

原创 瀏覽器架構

如何開發一個瀏覽器 瀏覽器的最主要的功能概括起來就是,加載顯示網頁。怎麼樣使我們的應用具備這樣的功能呢? 最簡單的就是利用Android WebView(以Android OS爲例),還有CEF(Windows/Linux/Mac OS

原创 webkit智能指針 - RefPtr, PassRefPtr

歷史           2005年之前,Webkit中很多對象都採用引用計數的方式。它們通過繼承RefCounted類模板來實現這種模式。RefCounted主要是實現了ref()和deref()兩個函數。在需要引用對象時要調用ref

原创 HTML 歷史項接口

瀏覽器窗口有一個history對象,用來保存瀏覽歷史。提供瞭如下接口用來操作歷史項: back() :後退,相當於點擊後退按鈕 forward(): 前進,相當於點擊前進按鈕 go(n): 移動到指定頁面 -- n是一個相對位置 go(-

原创 git基礎

git基礎 git是什麼 git是一個分佈式版本控制系統,我們熟悉的svn是一個集中式的版本控制系統。分佈式意味着每一臺運行git的電腦既可以是客戶端,也是“服務器”,客戶端存儲的數據與服務器存儲的數據沒有什麼差別(同步後)。git與sv

原创 MemoryCache

MemoryCache模塊是負責網頁加載的一個龐大機制,loader的一部分。這裏(https://www.webkit.org/blog/427/webkit-page-cache-i-the-basics/)可以瞭解更多。本文只談Me