2021-总结

2021 过得真快,没反应过来就完事了,可能是年纪大了。

可恶,还是没有财务自由,睡后收入也没提升一个数量级。

Read more →

Win10 使用体验和推荐软件与配置

最近入了台联想小新PRO 13 2020 锐龙R7 笔记本。性能非常好。 装的是Windows 10, 从MacOS 切换过来还真有点不习惯。 总体上开发效率比MacOS 会低些,使用体验也差些。可是MacBook Pro 又贵性能又差。 嗯,AMD Yes!

这里列出我用到的软件和配置,供参考

Read more →

Go 多个goroutinue顺序打印数字

一. 10个goroutinue顺序打印0-9 # 常规的做法是用10个channel来挨个控制,其实可以用原子包实现,相当于加锁 func printInOrder() { wg := sync.WaitGroup{} var curr int32 for i := int32(0); i < 10; i++ { wg.Add(1) go func(num int32) { defer wg.Done() for { if n := atomic.LoadInt32(&curr); n == num { fmt.Println(num) atomic.AddInt32(&curr, 1) break } time.Sleep(time.Nanosecond) } }(i) } wg.Wait() } 二. 两个goroutinue分别打印奇偶数 # 同上,还是用原子包 func printMix() { wg := sync.WaitGroup{} var curr int32 wg.Add(2) go func() { defer wg.Done() for curr < 10 { if n := atomic.
Read more →