原创 設計模式

裝飾者模式:在不改變現有對象結構的前提下,對現有對象進行更改;新建一個類,以該對象爲構造參數,在新類中進行更改; 外觀模式:用一個類的靜態方法包裝一個功能的相關邏輯,提供給外部一個單一接口 委託模式:根據參數不同,實例化出的對象不一樣,但各

原创 持久化存儲

內存數據持久化的兩種常見方法: 1.將內存數據定期dump到磁盤              優點:效率高,操作簡便              缺點:會損失部分數據 2.利用類似於mysql的binlog日誌的方式,記錄更新操作,需要時回放數

原创 我的友情鏈接

51CTO博客開發技術成就夢想

原创 談epoll與高性能

    今天偶然看到兩篇關於討論epoll與高性能問題的文章,文章均頗爲爭議,下面是兩篇文章和討論的地址:     http://guanzhongdaoke-gmail-com.iteye.com/blog/189005     http

原创 單生產者+單消費者模式下的雙向循環鏈表之無鎖結構

先貼一段代碼,有時間再來分析:   #include <stdlib.h>  #include <stdio.h>  #include <pthread.h>  #include <string.h>  #include <sys/type

原创 linux的分段和分頁

首先拋兩個話題: (1)ELF文件有分段,linux內存有分段機制,這兒意指哪個?兩個分段有什麼關聯 (2)常有人提到linux不使用分段機制,是什麼個情況?   關於第一個問題,ELF文件的分段,更多的是從功能和屬性來做區分,是在文件區段

原创 鏈接器/加載器/庫

    花了一週的時間,學習了鏈接、加載和庫的相關內容。閱讀了《鏈接器和加載器》、《程序員的自我修養-鏈接、加載和庫》這兩本書(這個話題相關的資料很少見,這兩本一個國外一個國內的,算是比較經典),當然,一遍是肯定不夠的,計劃是完成五遍。  

原创 linux下設置thinkpad小紅點靈敏度

 轉載自:http://renkai.org/2011/08/linux%E4%B8%8Bthinkpad%E5%B0%8F%E7%BA%A2%E7%82%B9%E7%9A%84%E9%80%9F%E5%BA%A6%E5%92%8C%E7%

原创 再記malloc/free

之前寫過一篇博文,介紹當free()掉與malloc()返回指針不一致時導致崩潰原因:http://liulixiaoyao.blog.51cto.com/1361095/565677 這篇博文裏面解釋了崩潰是緣於指針變化之後,定位不到正確

原创 我的友情鏈接

51CTO博客開發技術成就夢想

原创 解決PHP Json_decode 解析失敗

解決PHP Json_decode 解析失敗 項目中遇到一個問題,來訪問EXE後,傳過來的JSON數據,處理到某一個數據庫時出現了問題,JSON數據未被解析。 分析後發現數據中含有法語字符。 json_decode和json_enco

原创 C++缺省構造函數的真相

轉載自:http://blog.csdn.net/wuliming_sc/article/details/3855270   首先看看下面一段程序代碼: class Foo {      public:      int val;     

原创 總線 bus

    (本文特質80x86系列)     計算機各組件之間通過三種總線結構聯繫起來:數據總線、地址總線和控制總線     數據總線用於各組件之間的數據傳遞:CPU<-->Memory、CPU<-->I/O Devices     數據總線

原创 設計模式

裝飾者模式:在不改變現有對象結構的前提下,對現有對象進行更改;新建一個類,以該對象爲構造參數,在新類中進行更改; 外觀模式:用一個類的靜態方法包裝一個功能的相關邏輯,提供給外部一個單一接口 委託模式:根據參數不同,實例化出的對象不一樣,但各

原创 C++與C的安全鏈接

C++支持函數的重載,對重載函數版本的選擇,在鏈接的時候如何處理,C++的做法是爲每個重載版本根據其參數類型擴展其原始函數名稱,這樣根據重載類型即可決定實際調用哪一個具體的重載版本 鑑於歷史遺留原因,以及C++的設計原則,保持和C庫鏈接的兼