摘要: Go代码检修工具集 gofmt Go安装程序中自带了gofmt工具,可以使用它来格式化代码,保持一致的代码风格: $ find . -name "*.go" -not -path "./vendor/*" -not -path ".git/*" | xargs gofmt -s -d gocyclo 阅读全文
posted @ 2020-12-17 15:32 Binb 阅读(549) 评论(0) 推荐(0) 编辑
摘要: Go Exec执行命令 执行命令并获得输出结果 最简单的例子就是运行ls -lah并获得组合在一起的stdout/stderr输出。 func main() { cmd := exec.Command("ls", "-lah") out, err := cmd.CombinedOutput() if 阅读全文
posted @ 2020-12-17 15:21 Binb 阅读(2972) 评论(0) 推荐(0) 编辑
摘要: Go TryLock实现 Go标准库的sync/Mutex、RWMutex实现了sync/Locker接口, 提供了Lock()和UnLock()方法,可以获取锁和释放锁,我们可以方便的使用它来控制我们对共享资源的并发控制上。 但是标准库中的Mutex.Lock的锁被获取后,如果在未释放之前再调用L 阅读全文
posted @ 2020-12-17 15:09 Binb 阅读(1054) 评论(0) 推荐(1) 编辑