go 的一些知識點的記錄

2021-10-18 18:27:57 字數 2332 閱讀 5086

go env

go111module=

"on"

goarch=

"amd64"

gobin=

"/users/kyle/go/bin"

gocache=

"/users/kyle/library/caches/go-build"

goenv=

goexe=

""goflags=

""gohostarch=

"amd64"

gohostos=

"darwin"

goinsecure=

""gomodcache=

"/users/kyle/go/pkg/mod"

gonoproxy=

""gonosumdb=

""goos=

"darwin"

gopath=

"/users/kyle/go"

goprivate=

""goproxy=

""goroot=

"/usr/local/go"

gosumdb=

"off"

gotmpdir=

""gotooldir=

"/usr/local/go/pkg/tool/darwin_amd64"

gccgo=

"gccgo"

ar="ar"

cc="clang"

cxx=

"clang++"

cgo_enabled=

"1"gomod=

"/dev/null"

cgo_cflags=

"-g -o2"

cgo_cppflags=

""cgo_cxxflags=

"-g -o2"

cgo_fflags=

"-g -o2"

cgo_ldflags=

"-g -o2"

pkg_config=

"pkg-config"

gogccflags=

"-fpic -m64 -pthread -fno-caret-diagnostics -qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/6h/8wd9y15d05z49n5bnj_bkddr0000gp/t/go-build232285705=/tmp/go-build -gno-record-gcc-switches -fno-common"

go install是把當前 module 安裝到 go 的 env 路徑的 bin 中,如果沒有特殊指定,就是在~/go/bin

像我在安裝了hellomodule 之後

go % tree -l 3

.├── bin

│ └── hello

├── pkg

│ ├── darwin_amd64

│ │ └── github.com

│ └── mod

│ ├── cache

│ ├── github.com

│ ├── golang.org

│ ├── google.golang.org

│ └── gopkg.in

└── src

├── demo

│ ├── demo-inte***ce.go

│ └── demo.go

├── github.com

│ ├── gin-contrib

│ ├── gin-gonic

│ ├── go-playground

│ ├── go-sql-driver

│ ├── golang

│ └── leodido

└── pkg

└── mod

可以通過指令修改 gobin 的 path

go env -w gobin=你需要指定的全域性路徑
要想 bin 中的執行檔案可以在任意地方執行,還需要在系統的配置檔案中新增 path,比如 macos 的 .bash_profile 中新增如下:

export path=

"/users/kyle/go/bin:$path"

新增儲存完之後還需要使其生效:

source .bash_profile

Shiro的一些知識點記錄

1.subject.isauthenticated 本質上會根據是否讀取到session判斷是否登入,對分布式系統的改造,可以通過sessiondao去快取中讀取。可以從 defaultwebsecuritymanager defaultwebsubjectfactory.createsubject...

一些知識點

字串拼接 1.a join b a為元素之間的分隔符,b為待分割的序列 可用於輸出時的資料處理,元素間有空格,末尾沒有 2 s s s str1,str2,str3 前半部分為字串,後半部分為索引。用於引入,s是物件 3.format str1,str2,str3 與f 括號裡為已有變數 關於for...

一些知識點

1.vector是在堆上還是棧上?在堆上.2.我們發現指標有一些 似是而非 的特徵 1 指標消亡了,並不表示它所指的記憶體會被自動釋放。比如函式中的指標是區域性變數,如果它指向了堆上,而自己出了函式後消亡了,但它所指向的記憶體還是存在的,導致了記憶體洩漏.2 記憶體被釋放了,並不表示指標會消亡或者成...