Go 1.16 的一个新功能 embed
可以把静态文件嵌入到打包的二进制文件里,在某些场合,这个功能很使用。
截屏2021-02-17 下午10.06.36
下面是一个简单的使用例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// hello.txt
hello, go 1.16
// main.go
package main
import (
_ "embed"
"net/http"
)
//go:embed hello.txt
var s string
func main() {
http.Handle("/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte(s))
}))
http.ListenAndServe(":8080", nil)
}
打开网址就会看到
1
hello, go 1.16
There are 3 Comments to "Go 1.16 正式版发布了,亮点嵌入静态文件到二进制文件"
该版本保留了Go 1 兼容性的承诺,几乎所有 Go 程序都能像以前一样继续编译和运行。
期待的范型没出来😂
编译速度提高没那么明显,没有1.10版提高得显著。