不灭的焱

革命尚未成功,同志仍须努力 下载Java21

作者:AlbertWen  添加时间:2017-10-29 20:24:32  修改时间:2026-06-21 10:39:34  分类:21.Go语言编程  编辑

[荐] Gitea:Git with a cup of tea,在 Gogs 基础上,发展起来的 自助 Git 服务系统。Gogs是一个个人维护的版本,而Gitea是一个社区组织维护的,版本迭代更新快

[github] [官网] [二进制安装]

搭建过程如下:

下载二进制包

建议到官网上 下载 执行包,github 上下载太慢。CentOS 64 位系统,选择最新版的:gitea-1.1-linux-amd64。

下载后,重命名为 gitea,存放到服务器上的物理路径为: /fiisoo/go/gitea

作者:AlbertWen  添加时间:2019-06-18 10:17:18  修改时间:2026-06-16 18:39:52  分类:21.Go语言编程  编辑

V语言 版本发布 记录

作者:AlbertWen  添加时间:2017-10-29 09:02:34  修改时间:2026-06-24 01:02:32  分类:21.Go语言编程  编辑

GOPATH 环境变量用于指定这样一些目录:除 $GOROOT 之外的包含 Go 项目源代码和二进制文件的目录。go install 和 go 工具会用到 GOPATH:作为编译后二进制的存放目的地 和 import 包时的搜索路径。

GOPATH 是一个路径列表,也就是可以同时指定多个目录。多个目录在 Mac 和 Linux 下通过“:”分割,Windows下通过“;”分割。注意,大部分情况下会是第一个路径优先,比如:查找包

作者:AlbertWen  添加时间:2017-10-27 12:51:04  修改时间:2026-06-25 08:00:06  分类:21.Go语言编程  编辑

if

if也许是各种编程语言中最常见的了,它的语法概括起来就是:如果满足条件就做某事,否则做另一件事。

Go里面if条件判断语句中不需要括号,如下代码所示

if x > 10 {
    fmt.Println("x is greater than 10")
} else {
    fmt.Println("x is less than 10")
}
作者:AlbertWen  添加时间:2017-10-18 17:16:14  修改时间:2026-06-19 07:42:07  分类:21.Go语言编程  编辑
作者:AlbertWen  添加时间:2018-07-16 17:45:45  修改时间:2026-06-25 03:03:19  分类:21.Go语言编程  编辑

Golang的主要 设计目标之一就是面向大规模后端服务程序,网络通信这块是服务端 程序必不可少也是至关重要的一部分。在日常应用中,我们也可以看到Go中的net以及其subdirectories下的包均是“高频+刚需”,而TCP socket则是网络编程的主流,即便您没有直接使用到net中有关TCP Socket方面的接口,但net/http总是用到了吧,http底层依旧是用tcp socket实现的。

作者:AlbertWen  添加时间:2017-10-18 17:17:12  修改时间:2026-06-24 05:59:31  分类:21.Go语言编程  编辑

context是Go中广泛使用的程序包,由Google官方开发,在1.7版本引入。它用来简化在多个go routine传递上下文数据、(手动/超时)中止routine树等操作,比如,官方http包使用context传递请求的上下文数据,gRpc使用context来终止某个请求产生的routine树。由于它使用简单,现在基本成了编写go基础库的通用规范。笔者在使用context上有一些经验,遂分享下。

作者:AlbertWen  添加时间:2017-10-29 20:31:33  修改时间:2026-06-23 16:56:10  分类:21.Go语言编程  编辑

原文:Fundamentals of concurrent programming

译者:youngsterxyf

本文是一篇并发编程方面的入门文章,以Go语言编写示例代码,内容涵盖:

  • 运行期并发线程(goroutines)
  • 基本的同步技术(管道和锁)
  • Go语言中基本的并发模式
  • 死锁和数据竞争
  • 并行计算
作者:AlbertWen  添加时间:2018-01-03 01:25:00  修改时间:2026-06-15 11:24:41  分类:21.Go语言编程  编辑

pack.sh

#!/bin/sh

export GOARCH=amd64
export GOOS=linux

bee_wjb pack -exp="pack.sh:_readme:README.md:glide:bee.json:app/view:data/cache:data/log:data/upload:vendor"


作者:AlbertWen  添加时间:2017-10-29 21:05:18  修改时间:2026-06-24 19:16:58  分类:21.Go语言编程  编辑

golang 的 nil 在概念上和其它语言的 null、None、nil、NULL一样,都指代零值或空值。nil 是预先说明的标识符,也即通常意义上的关键字。在 golang 中,nil 只能赋值给 指针channelfuncinterfacemapslice 类型的变量。如果未遵循这个规则,则会引发 panic。对此官方有明确的说明:http://pkg.golang.org/pkg/builtin/#Type