Time of Update: 2017-04-24
標籤:map ref for 鍵盤 輸入 調用 跳過 右箭頭 編譯 Mac鍵盤符號和修飾鍵說明? Command? Shift? Option? Cont
Time of Update: 2017-05-11
標籤:about 範圍 定義 zoj ram a10 推出 先來 problem 原文連結 http://www.cnblogs.com/liu-runda/p/6193690.htm
Time of Update: 2017-04-17
標籤:down exp class ase self ace code packages traceback 舉一個很簡單的例子,如果你發現一個包或者模組,明明是有的,但是會發生這樣的錯誤:&g
Time of Update: 2017-04-13
標籤:log ace 指定 使用者 and nload history comm 驗證 轉自:http://www.mikebai.com/Article/2009-11/757.html<
Time of Update: 2017-03-13
標籤:zha 它的 目標 改變 end 動作 sky 先來 img http://liweizhaolili.blog.163.com/blog/static/16230744201271210
Time of Update: 2017-03-12
標籤:ima default var test class類 element 決定 ret lan
Time of Update: 2017-05-31
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。原文串連:http://targetliu.com/2017/5/2...好久沒有發過文章了 - -||,今天發一篇 golang 中 goroutine 相關的學習筆記吧,以樣本為主。WaitGroupWaitGroup 在 sync 包中,用於阻塞主線程執行直到添加的 goroutine 全部執行完畢。ContextContext 是在 Go1.7 中移入標準庫的。Context 包不僅實現了在程式單元之間共用狀態變數的方法,
Time of Update: 2017-05-26
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。線性結構是電腦最常用的資料結構之一。無論是數組(arrary)還是鏈表(list),在編程中不可或缺。golang也有數組,不同於別的語言,golang還提供了切片(slice)。切片比數組有更好的靈活性,具有某些動態特性。然而切片又不像動態語言的列表(Python
Time of Update: 2017-04-12
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Gor概述Gor 是用 Golang 寫的一個 HTTP 即時資料流量複製工具。只需要在 LB 或者 Varnish 入口伺服器上執行一個進程,就可以把生產環境的流量複製到任何地方,比如 Staging 環境、Dev 環境。完美解決了 HTTP 層即時資料流量複製和壓力測試的問題。Image.pngGor的功能Gor 支援流量的放大和縮小、頻率限制,這樣不需要搭建和生產環境一致的伺服器叢集也可以正確測試。Gor
Time of Update: 2017-05-15
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言中字串的拼裝方法很多,那麼問題來了,到底哪家效能好? 下面代碼,分別比較了 fmt.Sprintf,string +,strings.Join,bytes.Buffer,方法是迴圈若干次比較總時間。在VMWare下的Ubuntu 14.04下啟動並執行結果如下,僅供參考: fmt.Sprintf 和 strings.Join 速度相當 string + 比上述二者快一倍 bytes.Buffer又比上者快約400-
Time of Update: 2017-04-25
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Gopher們經常會遇到在多個$GOPATH來回切換工作的情境,每次切換都有手動修改$GOPATH才能編譯運行當前項目,很是不方便!!那麼有沒有自動修改$GOPATH的方法呢?答案當然是肯定的! 本人在 Linux/Mac的命令列通過配置 `~/.zshrc` 檔案實現了在視窗啟動及調用cd命令時自動重設$GOPATH的功能。 思路是: 首先判斷目前的目錄是否在某個 `src` 目錄下;
Time of Update: 2017-03-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。前言2月27日,UCloud推出了下一代VPC網路(下面簡稱VPCng)。VPCng旨在解決客戶網路使用情境中的痛點,如IP網段的自主規劃、跨可用性區域容災、VIP跨區高可用方案、混合雲和公用雲端的無縫串連等。UCloud認為VPC(Virtual Private
Time of Update: 2017-03-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 在寫伺服器程式時,特別是業務向的服務(比如遊戲伺服器),經常會遇到處理許多用戶端協議的情況,如果是http服務,那麼定義好處理介面,剩下的交給web伺服器就可以了。但是二進位協議就沒有這麼方便了。 通常的自訂二進位協議規則都是固定長度訊息頭+變長訊息體構成,在訊息頭中會有訊息長度,訊息id等欄位。(基於TCP流式協議),伺服器接收到用戶端訊息後,首先讀取訊息頭,解析得到訊息長度,再按照指定長度擷取到完整的訊息體的位元據。
Time of Update: 2017-03-10
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。本文介紹 Go 語言編譯工具的安裝和卸載。1. 安裝下載對應系統的二進位檔案 https://golang.org/dl/如果是升級Go 工具,則先卸載舊版本,在安裝新版本。將下載的打包檔案解壓至 /usr/local 目錄tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz12tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz 將
Time of Update: 2017-03-14
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。channel 是 golang 裡相當有趣的一個功能,在我使用 golang 編碼的經驗裡,大部分事件都會是在享受 channel 和 goroutine 配合的樂趣。所以本文主要介紹 channel 的一些有趣的用法。 這裡有 Oling Cat 翻譯的Go程式設計語言規範裡關於 channel(通道)的描述: 通道提供了一種機制,它在兩個並發執行的函數之間進行同步,並通過傳遞(與該通道元素類型相符的)值來進行通訊。
Time of Update: 2017-04-19
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。今天寫了一道比較簡單的和一道難的#Two Sum題目:Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may
Time of Update: 2017-03-13
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。不知道你有沒有注意到一個現象,還是這段代碼,如果我跑在兩個goroutines裡面的話: var quit chan int = make(chan int)func loop() { for i := 0; i < 10; i++ { fmt.Printf("%d ", i) } quit <- 0}func main() { //
Time of Update: 2017-04-04
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。我們知道類似優先順序隊列是使用heap堆棧來實現的。 優先順序隊列的用途我就不多說了,一般是用來做任務權重分配的。 下面priority_queue優先順序庫是在github.com找到的。 看了下他的原始碼實現,得知他不是安全執行緒的。 如果要實現資料的安全執行緒,需要用sync lock實現全域鎖,保證資料的原子性。 該文章寫的有些亂,歡迎來噴 !
Time of Update: 2017-03-05
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。[TOC]介紹Google Protocol Buffer( 簡稱 Protobuf) 是 Google 公司內部的混合語言資料標準Protocol Buffers 是一種輕便高效的結構化資料存放區格式可以用於結構化資料序列化,或者說序列化。它很適合做資料存放區或 RPC 資料交換格式。可用於通訊協議、資料存放區等領域的語言無關、平台無關、可擴充的序列化結構資料格式。支援語言很多,C++ java python php
Time of Update: 2017-03-05
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ("crypto/md5""fmt""io")func main() {str := "abc123"//方法一data := []byte(str)has := md5.Sum(data)md5str1 := fmt.Sprintf("%x", has)