原创 effective C++

1 C++語言聯邦 C            內置類型傳值更快C with class  構造析構 封裝 繼承 多態 動態綁定  傳遞常引用更快Template  模板元編程STL 容器 迭代器 算法 函數對象   基於C指針 傳值更快

原创 數值運算

位運算應用口訣  清零取反要用與,某位置一可用或 若要取反和交換,輕 輕鬆鬆用異或 移位運算 要點 1 它們都是雙目運算符,兩個運算分量都是整形,結果也是整形。      2 "<<" 左移:右邊空出的位上補0,左邊的位將從字頭擠掉,

原创 select與epoll

select 每個監聽週期中均需: 用戶空間將需要監聽的fd以bitmap的方式複製到內核 內核遍歷bitmap調用相應的驅動的poll以查詢設備是否可讀寫,並將current記入本驅動程序的等待隊列中 有可讀寫,將相位fd寫入 傳入fd

原创 more effective C++

M1:指針與引用的區別 存在指向不同對象的需求,包括有可能爲空時使用指針,否則使用引用重載操作符時返回引用M2:儘量使用C++風格的類型轉換 顯示錶明程序員的想法;避免不合法的轉換M3:不要對數組使用多態 點贊 收藏

原创 並行編程

http://geek.csdn.net/news/detail/209354 內存屏障也隱含了編譯屏障的作用。所謂編譯屏障,是爲了解決編譯亂序的問題。這個問題的根源在於:在發明編譯器的時候,多核還未出現。編譯器開發者認爲編譯出來的二進

原创 python基礎

在運行腳本之後,得到結果之前1 python先將腳本編譯成字節碼(pyc  pyo);2python虛擬機解釋並運行字節碼文件。python具有動態語義,賦值時確定變量類型。python用縮進表層次python編程範式 #coding

原创 POSIX線程

兩種實現 linuxThreads  Native POSIX Threads Library  (NPTL) fork本身開銷大,即使採用寫時拷貝技術父子進程間的通信須經過IPC 催生了輕量級進程——線程    進程有層次關係;同

原创 Makefile

Makefile中的變量定義 延時定義 immediate = deferred immediate ?= deferreddefine immediatedeferred endef 立即定義 immediate := i

原创 C++對象模型

繼承規則下的內存佈局普通單一繼承  虛函數表合併,其他成員依次排開普通多重繼承  各積累按繼承順序依次排開,本身虛函數合併入第一個積累的虛函數表,其他成員依次排開虛單一繼承      自身成員    基類成員依次排開菱形虛擬繼承  以普通

原创 設計模式

框架就是程序中不變的部分! 1 單例模式 餓漢方式  利用類內部的static對象實現單利。簡單快捷但是不符合延遲實例化懶漢方式  類內存放static對象指針,空指針時實例化否則直接返回原對象。延遲了實例化,多線程下不能保證單例!加鎖

原创 進程間同步——互斥鎖與條件變量

#include<pthread.h> 互斥鎖——用於主動獲取共享資源時的互斥與等待 多個線程鎖定同一臨界區時,解鎖後,優先級最高的線程被優先執行 靜態初始化 static pthread_mutex_t mutex = PTHREA

原创 effective STL

條款1:仔細選擇你的容器 條款2 : 小心對 容器無關代碼的幻想 條款3:使容器對象的拷貝操作輕量而正確 條款4:使用empty() 代替size()檢查是否爲0 條款5:儘量使用區間成員函數代替它們的單元 點贊 收藏

原创 編程十年之那些年我見過和用過的RPC

  編程十年之那些年我見過和用過的RPC 2018年11月26日 16:49:22 lein_wang 閱讀數:85 轉自:https://pure-earth-7284.herokuapp.com/2016/02/08/ten-year

原创 linux top命令中的cache & buffers

個人分類: 操作系統linux 版權聲明:本文爲博主原創文章,轉載請註明連接。 https://blog.csdn.net/Cooling88/article/details/50969013 今天用top查看系統具體進程使用系統資源的情

原创 doxygen註釋規範

基於Doxygen的C/C++註釋原則 標註總述 1.文件頭標註 2. 命名空間標註 3. 類、結構、枚舉標註 4. 函數註釋原則 5. 變量註釋 6. 模塊標註 7. 分組標註 總述 華麗的分隔線 //-----------------