csdn部落格日期:2023年7月9日
linux後台開發需要熟練掌握哪些技能呢?
cpu wait% ↑
top: swap memory ↑
kswap程序
valgrid中malloc/free值
呼叫mallinfo
輸出當前所佔記憶體
strace -p
valgrid中access invalid address
記憶體洩漏:top
程序太多: vmstat 1
io阻塞:vmstat 1
執行緒引數不能是區域性變數
pthread_join或boost::thread::join等於waitpid, 呼叫者會阻塞
socketfd等資源無法共享
使用gcc -pthread 或者 -d_reenterant來解決全域性變數重入問題
使用_r版本的庫函式解決庫函式重入問題
readelf -s /lib/libc-2.17.so | grep _r@
檢視所有_r版本函式
互斥邏輯rcntl, flock, semaphere, mutex, rwlock
記憶體原子操作
狀態轉移圖
closed,
listen,
syn_rcvd,
syn_sent,
established,
fin_wait_1,
fin_wait_2,
time_wait
為什麼要三步握手
為什麼要有time_wait
ulimit -c unlimited
gcc -g
gdb
gdb -c core bin
(gdb) bt
(gdb) l
(gdb) frame 0
(gdb) p this->m_value
scoped_ptr
shared_ptr
weak_ptr
enable_shared_from_this
noncopable
Linux後台C 開發知識點
csdn部落格日期 2013年7月9日 linux後台開發需要熟練掌握哪些技能呢?cpu wait top swap memory kswap程序 valgrid中malloc free值 呼叫mallinfo輸出當前所佔記憶體 strace p valgrid中access invalid add...
後台開發 相關知識點
使用構建系統時,如何引用其他模組 相比於編譯器,構建系統可以處理更複雜的依賴,多種語言的混合編譯,有些甚至支援雲編譯 把 push到遠方編譯平台,調動編譯集群,再把編譯產物pull回本地 最終交付給我們二進位制檔案 可執行檔案,靜態庫檔案.在使用了構建系統時,當我們要引用其他模組 時,不同於以往簡單...
開發知識點記錄
獲取乙個集合中的資料,transform是物件組裝方法 流是從支援資料處理操作的源生成的元素序列,源可以是陣列 檔案 集合 函式。流不是集合元素,它不是資料結構並不儲存資料,它的主要目的在於計算 plist.stream filter person 23.0 equals person.getord...