package main
import (
"crypto/md5"
"crypto/sha1"
"crypto/sha256"
"fmt"
"io"
"os"
)
func main() {
package main
import (
"crypto/md5"
"crypto/sha1"
"crypto/sha256"
"fmt"
"io"
"os"
)
func main() {
package main
import (
"encoding/base64"
"fmt"
)
func main() {
data := "彥霖的部落格:http://lolikitty.pixnet.net"
fmt.Println("加密前文字:", data)
code := base64.StdEncoding.EncodeToString([]byte(data))
Json 編碼 1:
package main
import (
"fmt"
"encoding/json"
)
func main() {
m := User{"乃木坂春香", "abcde@yahoo.com", "0932-111-222", "Japan"}
b, _ := json.Marshal(m)
fmt.Println(string(b))
增加 Goroutine 並發數量:
要增加 Goroutine 並發數量,除了要增大 RAM 記憶體之外,還要增大作業系統的:虛擬記憶體 !! 根據我之前測試,我 RAM 有16GB,然後我寫了一個測試程式,查看最高可以乘載多少並發數量,發現最高只能承受 170萬條 Goroutine ,此時記憶體只使用8.5GB,然後作業系統跳出記憶體不足 !! 我明明裝16GB記憶體但是只使用8.5GB 卻跟我說記憶體不足? 於是我調了作業系統的虛擬記憶體後,把虛擬記憶體擴大到10GB,發現它可以承受 400萬條 Goroutine !! ( 此時16GB物理記憶體已滿 ),由此可知要增加 Goroutine 執行數量,調虛擬記憶體是必要的手段,否則 RAM 在大也無用...
package main
import (
"fmt"
)
func main() {
A()
fmt.Println("B():", B())
C(3, 5)
a, b := D()
_, c := D() // 底線代表不使用
package main
import (
"fmt"
)
func main() {
fmt.Println("For 的正常寫法:")
for i := 0; i < 5; i++ {
fmt.Println(i)
}
fmt.Println("For 的平行寫法:")
注意事項:函式開頭大寫代表公開函式 (Public Function),函式開頭小寫代表不公開函示 (Private Function)
預設模組 | ||
回傳 | 常數 | 用途 |
i, k | range <[]array> | 這只能用在 for 迴圈上的(陣列、通道), i = 遞增,k = 該陣列的 i 地址的值 |
回傳 | 函數 | 用途 |
print() | 列印 | |
println() | 換行列印 | |
len(<[] array>) | 取得"實際儲存個數"的陣列大小 | |
cap(<[] array>) | 取得"分配個數"的陣列大小 | |
runtime 執行時期模組 |
||
回傳 | 常數 | 用途 |
string | runtime.GOOS | 回傳目前作業系統名稱(非版本),如:windows |
回傳 | 函數 | 用途 |
int | runtime.NumCPU() | 回傳目前物理 (現實中) CPU 數量 |
void | runtime.GOMAXPROCS(n int) | 設定 Golang 運行時可以使用的CPU數量 |
看了標題就會知道講的其實都是同樣的東西,但是以官方文黨來看的話似乎是"夠程" ( Goroutine ) 才是正確的。
那麼在 Golang 裡 如何產生一個 Goroutine 呢?
這是一個普通的函數:
func A(){
fmt.Println("A")
}
按照以前我們調用函數的方式,還是單一 Goroutine,例如這樣呼叫:
1 2 3 4 |
import "fmt"package main func main() { fmt.Println("Hellooooo World !! 你好世界 !!"); } |
輸出結果:Hellooooo World !! 你好世界 !!
Eclipse安裝插件更新中輸入:http://goclipse.googlecode.com/svn/trunk/goclipse-update-site/
之後再進行安裝即可。
記得配置Go的安裝路徑,之後即可開始選寫 Go 程式