自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 redis 杂记

是保证一串命令执行不被别的其他命令插入进来,保证数据的一致性,但是不会保证事务的原子性:既如果事务中一条命令出错,那其他已经执行的命令并不会回滚(在实际的使用中,命令错误是无法继续的,当前的事务还在QUEUE中,还没执行)目前还没想好复现这个错误的情况。

2025-04-10 20:56:41 142

原创 golang中channel的sendx、recvx和sendq、recvq的作用和区别

当一个 goroutine 尝试向一个已满(对于有缓冲 channel)或者没有接收者(对于无缓冲 channel)的 channel 发送数据时,这个 goroutine 会被阻塞,并且会被放入 sendq 队列中等待,直到有其他 goroutine 从该 channel 接收数据。当一个 goroutine 尝试从一个没有数据的 channel 接收数据时,这个 goroutine 会被阻塞,并且会被放入 recvq 队列中等待,直到有其他 goroutine 向该 channel 发送数据。

2025-04-10 10:41:06 277

原创 分治算法-数组排序

【代码】分治算法-数组排序。

2025-04-01 17:48:35 99

原创 遍历多叉树的所有数据

【代码】遍历多叉树的所有数据。

2025-03-31 16:33:24 73

原创 golang select 琐碎

上述代码中,管道关闭,所以<-ch依旧是可读,所以会进入到此case里面;如果将close(ch)给注释掉,则会一秒后进入第二个case里面。select case中的case是检测channel是否可读和可写。select case 做多路复用。

2024-11-28 11:57:34 159

原创 golang map琐碎知识

【代码】map琐碎知识。

2024-11-26 15:52:22 143

原创 golang defer 杂记

结果就是先顺序运行t1()函数,最后都输出“END…”后再执行t1函数返回的函数r1()

2024-08-13 19:51:31 141

原创 golang 管道channel相关问题

上面代码运行肯定会报deadlock的死锁错误,但是下面这样,如果有一个协程一直在运行,则不会报错,大致就是因为协程还在运行,所属主协程main不确定是否会往管道c1中写数据,所以就会一直阻塞在这里,上面的代码块或者没有一直执行的协程,那main就会知道不会再往管道c1中写数据了,就会报错(

2024-08-13 19:48:41 287

原创 golang context 备注

其中的OK指的是当前的ctx是否设置了过期时间,所以上面的代码中ok是true,返回dateTime变量是ctx的到期时间。一.## 关于deadline函数返回的布尔值OK。这里的OK则返回false,因为并没有过期时间。

2024-08-09 19:47:15 130

原创 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 135 1

原创 mysql update时为什么有时候不用二级索引而是用主键索引

update时为什么有时候不走二级索引而是使用主键索引

2024-06-12 17:41:06 615

原创 算法-golang 链表反转

【算法】golang 链表反转。

2024-05-30 19:58:52 205

原创 golang context WithTimeout 琐碎

运行的结果是:起始时间。。。。。。aa watch ctx2收到信号,监控退出,time2= 1712829564parent收到信号,监控退出,time= 1712829564起始时间。。。。。。aa watch ctx2收到信号,监控退出,time2= 1712829663parent收到信号,监控退出,time= 1712829663。

2024-04-11 18:06:43 463 1

原创 golang 变量 指针变量一些琐碎

【代码】golang 变量 指针变量一些琐碎。

2024-04-08 16:50:01 340 1

原创 golang 结构体 指针结构体

当声明一个变量是指针结构体时,必须初始化。否则就会报空指针错误。

2024-03-29 17:29:46 222 1

原创 爬楼梯算法

【代码】爬楼梯算法。

2024-03-27 17:12:44 150

原创 关于defer defer()() 后面跟返回函数

会 根据defer所在位置先执行f1()函数,然后在main的return 前去执行f1的返回函数,所以上面的值是。defer f1()() 这个执行顺序问题。

2023-07-04 12:01:08 90

原创 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 543

原创 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 1060

原创 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 278

原创 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 198

原创 golang语法备注

1.golang中其他包的方法要被调用,需要首字母大写,代表是公共的,否则只能被当前自己的包使用

2021-02-26 18:20:24 247

原创 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 807 1

原创 xtrabackup备份与恢复的脚本

xtrabackup备份与恢复的脚步01 02 * * * cd /home/xtrabackup_mysql && ./bk_mysql.sh fullbackup >> log/run.log 2>&1 &#!/bin/bashecho "==============new backup================="echo "===============arg:[$@]=================="dateexport

2020-12-08 17:11:39 325

原创 mysql主从同步因字段类型不一致导致主从失败

@[TOC](Column 3 of table ‘xxxxx’ cannot be converted from type ‘int’ to type ‘varchar(32)’)Slave SQL 报错信息如下:Column 3 of table ‘xxxxx’ cannot be converted from type ‘int’ to type ‘varchar(32)’这个错误是指:Column 3 字段类型由主库的int类型字段写入到从库时,字段是varchar类型中,是属于类型不一致导致

2020-11-24 11:47:25 1450

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除