归档
按时间归档的全部文章。
20267
十月6
什么时候才需要管线程安全?——一个能直接套的判断清单
判断标准只有一条:有没有"多个执行流"同时访问"同一份可变数据"。两个条件同时成立才需要考虑,缺任何一个都不用管。附一份四步自查清单和共享数据的风险排序。
委托的线程安全:`+=` 看着是一步,实际是三步
从"委托不可变"出发,把两个线程同时订阅却丢掉一个的全过程拆开看:为什么 private 挡不住、编译器生成的 add/remove 凭什么没事(附正确的 CAS 伪代码)、以及不可变顺手带来的那个好处。
C# 的语法糖有多甜?——? 家族、=> 与属性模式的一次清点
从"写过七门语言还是觉得 C# 最甜"讲起:? 家族七个成员分别是哪年加进来的、=> 和属性模式去糖后长什么样,以及 C# 的糖和 Scala 的糖到底甜在哪儿不一样。
从函数指针到 event——C# 委托学习笔记
一次从头到尾的较真:delegate 编译出来是什么、多播列表为什么不能用数组去想、内置三件套该挑哪个、两个会咬人的坑,以及那个绕了很久的问题——我手写的 Add/Remove 明明已经能订阅了,event 凭什么非存在不可。答案牵扯到权限、并发、契约三件互不相干的事。
从 Dispatcher 的构造函数往下读——WPF 线程亲和学习笔记
一个 sealed 类、一个 private 构造函数、三行赋值。顺着源码把优先级队列里装的是什么、_tlsDispatcher 到底在干什么、一条线程能有几个 Dispatcher 一个个问清楚,再看后台线程是怎么把代码塞进 UI 线程去跑的。附通信调试助手里的真实日志代码。
用 Cloudflare R2 托管博客的图片和视频
把图片和视频放在 Cloudflare R2 上,再嵌进 Astro 文章里。附实测效果、视频卡顿的根因分析,以及 ffmpeg 转码方案。
八月1
本站的写作速查
本站支持哪些 Markdown 写法:提示框、目录、代码块增强、表格等,写文章时方便回来查。