Go 迭代变量的陷阱

在并发的goroutine中遇到这个问题,还以为是goroutine的问题,或者Go闭包的问题, 一层一层分析下来,才知道是Go本身迭代变量的问题,想起了PHP的foreach陷阱【PHP引用理解之神奇的foreach面试题】,不仅感慨深入掌握一门语言何其不易呀 ​​​

先说结论:Go在循环体中,每次遍历的变量是同一个,指向同样的内存地址,这是语言本身的一个陷阱

问题先行,我们先来看看问题
继续阅读

MySQL Limit用法笔记

最近用低代码平台amis, 2天搭了一个审核系统,为了快点看到效果,没有使用框架的ORM,直接写SQL,结果分页展示数据,总数比展示数据多一条,原因是在MySQL Limit上翻车了。特别震惊,工作这么多年了,自己真的不知道limit的用法。
继续阅读