golang
zuoye1010
这个作者很懒,什么都没留下…
展开
-
golang context 备注
其中的OK指的是当前的ctx是否设置了过期时间,所以上面的代码中ok是true,返回dateTime变量是ctx的到期时间。一.## 关于deadline函数返回的布尔值OK。这里的OK则返回false,因为并没有过期时间。原创 2024-08-09 19:47:15 · 117 阅读 · 0 评论 -
go 协程中读取的变量指变化
证明这个函数的变量是跟channel一样的,只要go func一直在执行,那读的这个变量的值也是会变的。所以最后的结果是1 2 3 4 5 6 7 8 9 10。一开始以为输出的结果是0 0 0 0 0 0 0 0。原创 2024-08-07 16:13:09 · 122 阅读 · 0 评论 -
golang 变量 指针变量一些琐碎
【代码】golang 变量 指针变量一些琐碎。原创 2024-04-08 16:50:01 · 329 阅读 · 0 评论 -
爬楼梯算法
【代码】爬楼梯算法。原创 2024-03-27 17:12:44 · 131 阅读 · 0 评论 -
golang管道channel顺序执行报错deadlock
当golang顺序执行时,会报错fatal error: all goroutines are asleep - deadlock!package mainimport ( "fmt")func main() { ch := make(chan int) ch<-1 c1 :=<-ch fmt.Println(c1)}不知道有没有跟我一样好奇,为什么下面读取了管道的内容,还是会报错呢,其实这样是因为对主程main而言,到ch<-1时,原创 2022-05-05 22:45:25 · 509 阅读 · 0 评论 -
golang使用range获取管道channel 内容
package mainimport ( "fmt" "time")func t1(ch chan int){ for s:=range ch{ fmt.Println(s) }}func main() { ch := make(chan int,3) go t1(ch) ch<-1 ch<-2 ch<-3 time.Sleep(time.Second * 6)}原创 2022-05-05 22:35:20 · 970 阅读 · 0 评论 -
golang 关于append
func main(){ s1 :=make([]int,0,5) s1 =append(s1,1,2,3) s2 :=append(s1,4,5) fmt.Println(s2) //[1 2 3 4 5] s3 :=append(s1,6) //此处相当于对s2指向的数组再做修改 fmt.Println(s1) //[1 2 3] fmt.Println(s2)//[1 2 3 6 5] fmt.Println(s3)//[1 2 3原创 2022-05-01 23:56:31 · 254 阅读 · 0 评论 -
Golang 简单链表
Golang 简单链表针对golang出学者,写一个简单的单向链表来进行练手,目前只有在链表添加功能直接贴代码package mainimport( "fmt" )type node struct{ name string next *node}func addNode(name string,rootNode *node){ var curNode node curNode.name = name curNode.n原创 2021-10-29 18:32:27 · 191 阅读 · 0 评论 -
golang语法备注
1.golang中其他包的方法要被调用,需要首字母大写,代表是公共的,否则只能被当前自己的包使用原创 2021-02-26 18:20:24 · 244 阅读 · 0 评论 -
golang 指针和引用
var s = []string{“a”, “b”, “c”}fmt.Printf(“s 的内存地址 = %p\n”, &s) //这个是变量s的地址fmt.Printf(“s 指向的内存地址 = %p\n”, s)//这个是变量s对应的切片的地址原创 2021-01-19 19:44:49 · 789 阅读 · 1 评论