
Go
杨宣yx
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
golang中协程详解
转:https://www.cnblogs.com/liang1101/p/7285955.html一、Golang 线程和协程的区别 备注:需要区分进程、线程(内核级线程)、协程(用户级线程)三个概念。 进程、线程 和 协程 之间概念的区别 对于进程、线程,都是有内核进行调度,有 CPU 时间片的概念,进行抢占式调度(有多种调度算法) 对于协程(用户级线程),这是...转载 2019-04-10 15:27:20 · 302 阅读 · 0 评论 -
Go中defer释放函数内部变量
转自https://studygolang.com/articles/10167在golang当中,defer代码块会在函数调用链表中增加一个函数调用。这个函数调用不是普通的函数调用,而是会在函数正常返回,也就是return之后添加一个函数调用。因此,defer通常用来释放函数内部变量。为了更好的学习defer的行为,我们首先来看下面一段代码:func CopyFile(ds...转载 2019-04-17 15:54:05 · 1847 阅读 · 0 评论 -
Go中新值替换旧值
package main 2 3 import "fmt" 4 import "sync/atomic" 5 6 var Value int32 7 func SetVal(delta int32){ 8 // for{ 9 v := Value 10 if atomic.CompareAndSwapInt32(&...转载 2019-04-17 15:31:56 · 470 阅读 · 0 评论 -
Go中提前关闭通道
package main 2 3 import "fmt" 4 import "time" 5 6 func main(){ 7 ch := make(chan int, 5) 8 go func(){ 9 for i := 0; i < 10; i++{ 10 ch <- i 11 ...原创 2019-04-17 15:05:56 · 199 阅读 · 0 评论 -
结构体中属性大小写
1 package main 2 3 import "fmt" 4 import "encoding/json" 5 6 type People struct{ 7 Name string `json:"name"` 8 } 9 10 func main(){ 11 js := `{ 12 "name" : "11" 13...原创 2019-04-17 14:14:14 · 1389 阅读 · 0 评论 -
Go协程匿名与非匿名
通过通信共享内存,而不是通过共享内存通信1 package main 2 3 import ( 4 "fmt" 5 ) 6 7 func main(){ 8 c := make(chan bool) 9 10 go func(){ 11 fmt.Println("aaa") 12 c <...原创 2019-04-11 19:46:17 · 1516 阅读 · 0 评论 -
Go中闭包实现
转:https://studygolang.com/articles/13812?fr=sidebar4. 闭包 闭包(closure)是 javascript 的一大难点,也是它的特色。很多高级应用都是依靠闭包来实现的。 4.1 变量作用域 要理解闭包,首先要理解javascript的特殊的变量作用域。变量的作用域无非就两种:全局变量和局部变量。 注意语法规则...转载 2019-04-11 14:54:17 · 560 阅读 · 0 评论 -
Go中Range遍历Array, Slice
1, range用来遍历 array, slice,还有map 在array,slice中返回索引值还有数值 在map中返回键值对2,package main 2 3 import ( 4 "fmt" 5 "sort" 6 ) 7 8 func main(){ 9 m := map[in...原创 2019-04-11 14:51:28 · 1304 阅读 · 0 评论 -
Go中数组Array
1,数组定义格式: var array [10]int2, 数组长度也是类型的一部分,因此不同的长度的数组也是不同的·类型3,数组之间可以用 == , != 去比较,但不可以用 < > 去判断4,数组也可以用new去创建,返回一个指向数组的指针5,支持多维数组,但不推荐使用...转载 2019-04-11 13:39:09 · 340 阅读 · 0 评论 -
Go 关键字
1, const 关键字用来定义常量 const name type = value (不论全局还是局部,必须要赋值) var 在函数体外用来全局变量的声明和赋值 var name type = value(值可省) type 用来接口和结构的声明 type name struct{} type name interface{} ...原创 2019-04-09 10:06:40 · 299 阅读 · 0 评论 -
Go中常量
一,const修饰的常量1,常量只能是bool ,整型,string, 浮点型2, const a int = value 或 const a = value (显式与隐式)3,多个一起声明const name1, name2 = value1, value24, const 用作枚举 package main 2 3 const( 4 a ...翻译 2019-04-09 15:01:49 · 199 阅读 · 0 评论 -
Go内置函数
1, append, copy 2 package main 3 4 import ( 5 "fmt" 6 ) 7 8 func main() { 9 10 var arr1 []string = []string{"a", "b"} 11 var arr3 []string 12 13 ...翻译 2019-04-09 18:50:20 · 297 阅读 · 0 评论 -
Go 中用range关键字获取命令行参数
1 package main 2 3 import "fmt" 4 import "os" 5 6 func main(){ 7 fmt.Println(len(os.Args)) 8 for i, arg := range os.Args{ 9 fmt.Println(i, arg) 10 } 11 }输出...原创 2019-04-10 13:25:17 · 219 阅读 · 0 评论 -
结构体中字典属性的值不能被修改
type Student struct{ name string}func main(){ m := map[string]Student{"people", {"aaa"}} m["people"] = "bbb"}报错:不能修改结构体中字典中的属性值 1 package main 2 3 import "fmt" 4 5 typ...原创 2019-04-17 17:01:44 · 997 阅读 · 0 评论