因為beego中的cache模組中的子模組memcached引用了這個包,所以也對這包的原始碼進行分析了下。花了一定的時間編寫整理這篇部落格,這個包一共兩個檔案,原始碼檔案。
關於memcache學習,可以到這邊教程學習
1)func new(server ...string) *client
用法:mc := memcache.new("127.0.0.1:11211")
作用:mc := memcache.new("127.0.0.1:11211")
用法:mc := memcache.new("127.0.0.1:11211")
用法:mc := memcache.new("127.0.0.1:11211")
用法:mc := memcache.new("127.0.0.1:11211")
用法:mc := memcache.new("127.0.0.1:11211")
newval, err := mc.increment("test", 2)
fmt.println(newval, err)
作用:將原來鍵的值加上指定數,可分為以下兩種情況:
1、如果原來的是乙個數字,則加上指定數,返回修改後的值和nil
2、如果原來的不是乙個數,則返回0和報錯資訊
用法:mc := memcache.new("127.0.0.1:11211")
用法:mc := memcache.new("127.0.0.1:11211")
mc.compareandswap(&memcache.item)9)func (c *client) flushall() error
用法:mc := memcache.new("127.0.0.1:11211")
err := mc.flushall()
用於清理快取中的所有 key=>value(鍵=>值) 對
用法:mc := memcache.new("127.0.0.1:11211")
err := mc.replace()
傳送replace命令到mecmached伺服器,該命令用於替換已存在的
key(鍵)的value(資料值)。
如果 key 不存在,則替換失敗,並且您將獲得響應 not_stored。
用法:mc := memcache.new("127.0.0.1:11211")
err := mc.touch("data", 120)
傳送touch命令到mecmached伺服器,如果key不存在,則會返回錯誤,
如果key存在,則會在設定的時間後自動刪除。
用法:mc := memcache.new("127.0.0.1:11211")
err := mc.delete("test")
將原有key對應的內容刪除
13)func (c *client) deleteall() error
用法:mc := memcache.new("127.0.0.1:11211")
err := mc.deleteall()
將內容刪除
(和delete共用一套實現**)
AbstractCollection原始碼分析
abstractcollection抽象類提供了collection的骨架實現,collection分析請看 這裡直接看它的 是如何實現的.public abstract iterator iterator 該方法沒有實現.public abstract int size 該方法沒有實現.publi...
ThreadPoolExecutor原始碼閱讀
執行緒池解決兩個問題 一是復用執行緒,減少建立銷毀執行緒帶來系統開銷 二是限定系統資源使用邊界,避免大量執行緒消耗盡系統記憶體 適用於互不依賴,執行時間短,不需要對執行緒控制操作的執行緒 新增任務時,1.若執行緒數量小於corepoolsize,則新增執行緒執行任務 2.若執行緒數量大於等於core...
OrangePi One Android 原始碼編譯
一 系統環境搭建參照 二 lichee原始碼編譯 1.檢視help build.sh h2.配置核心 cd linux 3.4 make arch arm menuconfig 進入配置頁面,上下移動列表,空格是選擇列表,左右移動選擇退出選項 3.首次編譯執行清除 在 lichee linux3.4...