2016/8/15 start time 9:50am 1 git clone https://github.com/GeertJohan/openwrt-go 2 git checkout add-gccgo-and-…
分类:go语言
Go语言并发详解
有人把Go比作21世纪的C语言,第一是因为Go语言设计简单,第二,21世纪最重要的就是并行程序设计,而Go从语言层面就支持了并行。 goroutine goroutine是Go并行设计的核心。goroutine说到底其实…
Golang 学习笔记一 fmt、变量、分支、循环
一、golang fmt格式“占位符” %d 十进制整数 %x, %o, %b 十六进制,八进制,二进制整数。 %f, %g, %e 浮点数: 3.141593 3.141592653589793 3.141593e+0…
16-Go语言异常处理
异常处理 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常 golang中提供了两种处理异常的方式 一种是程序发生异常时, 将异常信息反馈给使用者 一种是程序发生异常时, 立刻退出终止程…
Go语言从入门到放弃-前言
最近整日无所事事,想着再这么下去人就废的差不多了,特意开了这么一个博客。一来是系统的学习下Go语言,为明年入职做准备。二是锻炼下自己实在是不怎么样的文笔。三是磨练下自己的意志力,看看到底能坚持…
golang服务器开发利器 context用法详解
本文主要基于官方文档Go Concurrency Patterns: Context以及视频Advanced Go Concurrency Patterns的学习而得。 背景 在go服务器中,对于每个请求的request…
go语言 - 设计哲学
go语言是互联网时代的语言,融合了众多互联网时代程序设计的特征。 并行与分布式支持。多核化和集群化是互联网时代的典型特征。 并发执行的“执行体” 执行体是个抽象的概念,在操作系统层面有多个概念与之对应,如操作系统自己掌管…
Go语言-循环语句
Go语言中,可以使用for语句实现循环操作。一个简单的实例如下: package main func main() { sum := 0 for i := 1; i <= 100; i++ { sum += i }…
Go语言中Kill子进程的正确姿势
* 问题场景 我们在编写部署系统的时候,通常需要在机器上部署一个agent,用来执行部署脚本,为了防止部署脚本写的有问题,长时间hang住,我们通常会为脚本的执行设置一个超时时间,到了时间之后就kill掉该脚本的进程。如…
Go 中的方法集合指针接收者和值接收者
在Go语言中,可以给用户定义的类型添加新的行为。方法其实也是函数,只是在声明时,在关键字func和方法名之间增加了一个参数,可以先简单理解为类型也作为了参数传递入了函数中,如下代码所示: type user struct…
GoMock框架使用指南
序言 要写出好的测试代码,必须精通相关的测试框架。对于Golang的程序员来说,至少需要掌握下面四个测试框架: GoConvey GoStub GoMock Monkey 读者通过前面三篇文章的学习可以对框架GoConv…
go语言操作map
go语言map对象的定义 go语言定义map通常我们会看到三种方式 var m1 map[string]string var m2 map[string]string = map[string]string{} // o…