原创 ubuntu 編譯ActiveMQ-CPP
ActiveMQ-CPP依賴apr,apr-util,apr-iconv,cppunit.如果你還想使用ssl,你還要安裝OpenSSL apr,apr-util,apr-iconv可以到apache官網--http://apr.apa
原创 makefile 命令前-
通常make執行的命令如果出錯(該命令的退出狀態非0)就立刻終止,不再執行後續命令,但如果命令前面加了-號,即使這條命令出錯,make也會繼續執行後續命令。通常rm命令和mkdir命令前面要加-號,因爲rm要刪除的文件可能不存在,mkdi
原创 makefile中命令前@
通常,make會把其要執行的命令行在命令執行前輸出到屏幕上。當我們用“@”字符在命令 行前,那麼,這個命令將不被make顯示出來,最具代表性的例子是
原创 拆分字符竄函數
StrVec Split(const string &s, char c, bool inclue_empty_value) { retur
原创 linux靜態庫和動態庫編譯及使用
1 代碼樣例 [cpp] view plain copy /**************************************************************************/ /*add.
原创 Linux動態鏈接庫搜索路徑問題
動態庫的搜索路徑搜索的先後順序是: (1).編譯目標代碼時指定的動態庫搜索路徑(-Wl,-rpath 指定); (2).環境變量LD_LIBRARY_PATH指定的動態庫搜索路徑; (3).配置文檔/etc/ld.so.conf中指定的動
原创 samba最簡單實用
找到smb.conf 在最後加上 [mdl_dev] path=/home/yongqing.jiao/share writeable=yes browseable=yesguest ok=yes chmod 777 /home/yong
原创 linux下so動態庫一些不爲人知的祕密(中)
我們知道linux鏈接so有兩種途徑:顯示和隱式。所謂顯示就是程序主動調用dlopen打開相關so;這裏需要補充的是,如果使用顯示鏈接,上篇文章討論的那些問題都不存在。首先,dlopen的so使用ldd是查看不到的。其次,使用dlop
原创 gcc中的-Wl,rpath=選項
gcc編譯鏈接動態庫時,很有可能編譯通過,但是執行時,找不到動態鏈接庫,那是 因爲-L選項指定的路徑只在編譯時有效,編譯出來的可執行文件不知道-L選項後面的值, 當然找不到。可以用ldd <your_execute>看看是不有 ‘not
原创 linux下so動態庫一些不爲人知的祕密(上)
出處: http://blog.chinaunix.net/uid-27105712-id-3313293.html linux 下有動態庫和靜態庫,動態庫以.so爲擴展名,靜態庫以.a爲擴展名。二者都使用廣泛。本文主要講動態庫方面知識。
原创 socket可讀,可寫的條件
socket可讀可寫條件,經常做爲面試題被問,因爲它考察被面試者對網絡編程的基礎瞭解的是不是夠深入。要了解socket可讀可寫條件,我們先了解幾個概念:1.接收緩存區低水位標記(用於讀)和發送緩存區低水位標記(用於寫): 每個套接字有
原创 libevent----標誌信息
出處:http://blog.csdn.net/beitiandijun/article/details/72772899 一、事件類型 event-internal.h [cpp] view plain copy
原创 給 libevent 提交的pullrequest
https://github.com/nmathewson/Libevent/commit/6cce7458d0f94e320f201eb5be94866e6918d66c
原创 linux-線程/進程通信eventfd
eventfd 在內核版本,2.6.22以後有效。查看內核版本可以用命令 uname -r 在看muduo源碼時,項目中使用eventfd機制實現線程間的喚醒(通知)。覺得效率比較高,所以拿來學習下。其也可以實現父子進程間的通信。
原创 epoll檢測對端關閉
在對系統問題進行排查時,我發現了一個奇怪的現象:明明是對方斷開請求,系統卻報告一個查詢失敗的錯誤,但從用戶角度來看請求的結果正常返回,沒有任何問題。 對這個現象深入分析後發現,這是一個基於 epoll 的連接池實現上的問題,或者說是特