摸鱼精选第 24 期
1. Five ways to break Swift Concurrency
Apple 官方文档中说 @MainActor
可以保证方法或属性在主线程被调用。
但作者发现在 Xcode 14.1 中,有些情况下是依然在后台线程跑的,比如
self.perform(#selector(self.mainActorFunction))
- NotificationCenter.default 添加 selector 或者 block
- 其他一些 OC 方法的 selector 或 block
所以,@MainActor
最好用在你自己的纯 Swift 代码中,不用 selector,不要和其他的并发模式(比如 OperationQueue)混在一起。
2. Effective Shell
作者说是给 shell 用户的教程,不是教你写 shell 脚本。shell 本身能力有限,你要知道 shell 能干什么,不能干什么,想要高级点的可以使用脚本编程语 言,比如 Python。
3. C++20 Coroutines and io_uring Part 1
系列文章,还有: C++20 Coroutines and io_uring Part 2 C++20 Coroutines and io_uring Part 3
io_uring
算是这几年 Linux 新增的最实用的功能了,现在大部分服务器都慢慢转向 io_uring
。
4. Vue3 入门指南与实战案例
入门文章,不一样的是从前端工程化说起,我觉得这是很多 Vuer 们很欠缺的东西,大部分只会 vue-cli 创建项目,再深入就不会了。