What I Learned
- tokio项目学习
-
runtime/time模块学习,时间轮算法的学习
-
ThreadId类的学习
- 掌握了原子类不仅有原子性,还有内存顺序控制的功能
-
使用
Mutex
、Condvar
和AtomicUsize
实现线程的挂起与唤醒- 线程的挂起和任务的挂起,有些时候不仅要了解功能,还要掌握功能的主语
-
几种不同的Handle,体现了关注点的分离
- Runtime的Handle,供开发者调用
- Scheduler的Handle
- IoHandle
- TimeHandle
-
examples的学习,熟悉tokio的使用
-
定时器的结构体表示
-
Challenges & Solutions
- 对tokio的理解不够深入,还在表面
- 目前看到的Waker都是wake线程,如何实现wake的task还不理解
- std库的学习没有继续
This Week’s Win
- 线程挂起与唤醒的实现
- 对闭包或Callback的具体化理解:Callback传递的是操作或逻辑,普通参数是传递数据
- 实现了简单的fd命令
Next Week Focus
学习时长: 完成任务: