摘要: func main() { reader:=strings.NewReader("今天又是美好的一天hello world一天") for { p:=make([]byte,4) n,err:=reader.Read(p) if err!=nil{ //读到结尾 if err==io.EOF{ fm 阅读全文
posted @ 2024-04-04 17:24 柠檬橘 阅读(1) 评论(0) 推荐(0) 编辑
摘要: https://www.cnblogs.com/whgk/p/6149009.html 阅读全文
posted @ 2022-07-14 18:21 柠檬橘 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 如果多管道,一般使用for循环读取。 package main import "fmt" func main() { ch1:=make(chan int) go func(){ sum:=0 for i := 1; i < 1000; i++ { sum+=i ch1<-sum } close(c 阅读全文
posted @ 2021-11-13 21:21 柠檬橘 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 给定一个x值,初始值为0,让其自加1000后,再自减1000,如未加锁,情况如下: package main import ( "fmt" "sync" ) var wg sync.WaitGroup func main() { fmt.Println("数据竞争与锁") var x int //自 阅读全文
posted @ 2021-11-13 15:58 柠檬橘 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 在Go语言,实现同步的一种方式就是WaitGroup。 package main import ( "fmt" "time" ) func main(){ for i := 0; i < 1000; i++ { go fmt.Println(i) } time.Sleep(time.Second) 阅读全文
posted @ 2021-10-30 17:28 柠檬橘 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 限流器 阅读全文
posted @ 2020-09-17 10:27 柠檬橘 阅读(112) 评论(0) 推荐(0) 编辑
摘要: crontab 10 * * * * /root/a.sh 每个小时的第10分执行,1:10分,2:10...23:10分执行 */10 * * * * /root/a.sh 每10分执行一次(*/10,"/n"代表每隔n执行) 0 5 * * 2 /root/bak.sh 每周2的5点整 阅读全文
posted @ 2020-09-01 13:51 柠檬橘 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 关于「树」的题目,大多使用「递归」思想来解决。这道题的解题思路如下: 1.怎么判断一棵树是不是对称二叉树?答案:如果所给根节点,为空,那么是对称。如果不为空的话,当他的左子树与右子树对称时,他对称 2.那么怎么知道左子树与右子树对不对称呢?在这我直接叫为左树和右树 答案:在左树和右树均不为空情况下, 阅读全文
posted @ 2020-08-05 15:57 柠檬橘 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 在项目中,我们可能会需要获取一个文件的大小,在Go语言中,有很多方法来获取一个文件的大小 Read字节方式 func main() { file,err:=os.Open("water") if err ==nil { sum := 0 buf:=make([]byte,2014) for { n, 阅读全文
posted @ 2020-08-05 15:52 柠檬橘 阅读(7768) 评论(3) 推荐(1) 编辑
摘要: gorm是一个使用Go语言编写的ORM框架。 它文档齐全,对开发者友好,支持主流数据库.提升开发效率,牺牲执行性能和灵活性,大型项目禁用吧。哈哈哈哈,文档地址:gorm 阅读全文
posted @ 2020-08-01 19:18 柠檬橘 阅读(695) 评论(0) 推荐(0) 编辑