全部**5000行 (不含測試)
執行緒安全,原生支援多核多執行緒
不考慮移植性,不跨平台,只支援linux,不支援windows
主要支援x86-64,兼顧ia32
不支援udp,只支援tcp
不支援ipv6,只支援ipv4
不考慮廣域網應用,只考慮區域網(實際上muduo也可以用在廣域網上)
不考慮公網,只考慮內網。不為安全性做特別的增強
只支援一種使用模式:non-blocking io + one event loop per thread,不支援阻塞io
基於物件的程式設計風格:boost bind/function
moduo/base目錄下
\-- base
|-- asynclogging.
非同步日誌 backend
|-- atomic.h 原子操作與原子整數
|-- blockingqueue.h 無界阻塞佇列(消費者生產者佇列)
|-- boundedblockingqueue.h 有界阻塞佇列
|-- condition.h 條件變數,與 mutex 一同使用
|-- copyable.h 乙個空基類,用於標識 (tag) 值型別
|-- countdownlatch.
「倒計時門閂」同步
|-- date.
julian 日期庫(即公曆)
|-- exception.
帶 stack trace 的異常基類
|-- logging.
簡單的日誌,可搭配 asynclogging 使用
|-- mutex.h 互斥器
|-- processinfo.
程序資訊
|-- singleton.h 執行緒安全的 singleton
|-- stringpiece.h 從 google 開源**借用的字串引數傳遞型別
|-- tests 測試**
|-- thread.
執行緒物件
|-- threadlocal.h 執行緒區域性資料
|-- threadlocalsingleton.h 每個執行緒乙個 singleton
|-- threadpool.
簡單的固定大小執行緒池
|-- timestamp.
utc 時間戳
|-- timezone.
時區與夏令時
\-- types.h 基本型別的宣告,包括 muduo:
:string
安裝muduo庫
sudo yum install cmake
sudo yum install gcc-c++ # 安裝g++
boost安裝
tar zxvf muduo-0.9.0-beta.tar
cd muduo/
./build.sh
如何在自己專案中使用muduo?
muduo網路庫編譯安裝
sudo apt get install cmake sudo apt get install libboost dev tar zxf muduo 0.9.1 beta.tar.gz cd muduo build.shcentos系統使用yum install boost devel來安裝libb...
muduo網路庫編譯安裝
2 安裝依賴 sudo apt get install cmake sudo apt get install libboost dev tar zxf muduo 0.9.1 beta.tar.gz cd muduo build.sh centos系統使用yum install boost deve...
centos下Muduo庫的安裝
git clone2.在安裝muduo之前我們需要先安裝boost庫和cmake工具,muduo有三個非必要依賴庫,curl,c areas dns,google protobuf,這三個庫安裝之後,cmake會自動編譯出多一些例項。cmake安裝 3.進入muduo庫根目錄分別執行 build.s...