Folly是Facebook在2012年開源的一個C++11組件庫。
如果你在寫一個高性能高並發的服務器程序,Folly會節省你很多時間。前提是你的程序只需要運行在Linux平台上,還有你能接受並有耐心編譯的它的一系列依賴(Boost\gflags\gtest\glog\double-conversion\snappy\…)。
看到這里,你應該明白為什么Folly在百度上只有幾篇文章了。
幸運的是,如果你在用Mac OSX,只需要一行命令:brew install folly
等你裝好folly,鍵入#include <folly/,你會發現很多你曾經寫過或正想去寫的基礎組件:
Json.h
AtomicBitSet.h
AtomicHashMap.h
AtomicLinkedList.h
AtomicUnorderedMap.h
Conv.h
MPMCPipeline.h
MPMCQueue.h
MicroSpinLock.h
RWSpinLock.h
ScopeGuard.h
……
但,基本每個組件都有其適用場景,和限制條件。用前記得好好看下頭文件里的說明。