简介 Task 和 async/await 是 C# 异步编程的核心,也是最容易被表面化理解的一组概念。 开发中常见的说法往往是: Task 就是线程; await 会新开一...
简介 Task 和 async/await 是 C# 异步编程的核心,也是最容易被表面化理解的一组概念。 开发中常见的说法往往是: Task 就是线程; await 会新开一...
简介 在 .NET 异步里,如果你顺着这条线往下学: Task ValueTask IValueTaskSource 会发现难度是明显跳跃的。 Task 还是大多数业务代码的...
简介 在 .NET 里做性能优化时,很多人第一反应是: 少分配 少 GC 少临时对象 这个方向本身没有问题。 但问题在于,优化一旦开始,很容易走偏成另外一种极端: 看到对象创...
简介 在 .NET 项目里,只要分层稍微清晰一点,就绕不开这类代码: Entity -> Dto Request -> Command Command -> Aggregat...
简介 很多人第一次认真看 IL,通常不是因为“想学一门汇编”,而是因为碰到了这些问题: 同一段 C#,编译之后到底变成了什么 async/await、yield、lock 这...
简介 在 .NET 里提到同步,很多人第一反应通常是: 这没问题。 但只要你继续往下挖,很快就会碰到两个更底层的名字: 它们都能做“互斥”,但解决的问题并不是同一类。 一句话...
简介 很多人第一次认真看 gRPC,通常不是因为“想学一个新协议”,而是因为项目已经出现了这些信号: 服务和服务之间调用越来越多 REST 的 JSON 体积、契约漂移、字段...
简介 很多人第一次接触 TPL Dataflow,往往是在这种场景里: 有一批数据要按阶段处理 每个阶段都可能是异步的 有的阶段想并行,有的阶段又想限流 生产速度和消费速度不...
简介 只要你的 .NET 系统开始从单体走向微服务,很快就会遇到这个问题: 这时候你会发现,单库事务那套熟悉的心智模型开始失效了。 在单体应用里,你可以靠: SqlTrans...