<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[August_zero的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/August_zero</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; August_zero]]></copyright><item><title><![CDATA[PostgreSQL那些真正有辨识度的特性与优势]]></title><link>https://blog.csdn.net/August_zero/article/details/165110956</link><guid>https://blog.csdn.net/August_zero/article/details/165110956</guid><author>August_zero</author><pubDate>Sat, 12 Sep 2026 12:25:59 +0800</pubDate><description><![CDATA[DB-Engines 六月份的一篇文章显示，PostgreSQL（以下简称 PG）的热度仍在持续上升，上半年的涨分幅度位列第一。而在最新的数据库排行中，PG 也已经位列第四。PG 这些年的热度增长，与开源、社区生态以及数据库市场本身的变化都有关系。不过真正用过一段时间之后，会发现 PG 本身也确实有很多很有辨识度的设计。]]></description><category></category></item><item><title><![CDATA[被GPT的防御性编程整破防后,我转向了GLM5.3]]></title><link>https://blog.csdn.net/August_zero/article/details/164339720</link><guid>https://blog.csdn.net/August_zero/article/details/164339720</guid><author>August_zero</author><pubDate>Thu, 03 Sep 2026 20:33:28 +0800</pubDate><description><![CDATA[再者,5.6-sol本身的编程能力也令人堪忧,这个模型太过谨慎,所以思考的特别多,总是在一些地方过度思考,它很喜欢主动考虑大量潜在异常、兼容场景和未来扩展，即使提示词已经明确要求控制复杂度，也经常会额外引入一些实际上并不需要的保护机制和抽象层。并且,GPT的思考时间尤为的长,就我个人而言,写好文档后交给GPT去执行任务,平均下来一个任务要45分钟才能完成,当然我承认这和我个人网络的原因也有关系,但这种效率还是太低了。言归正传, 这类项目的前端设计显然是要做到清晰,简洁,操作简单的性质。]]></description><category></category></item><item><title><![CDATA[用了这么久AI, 有些基础专有名词你真的都理解了吗?]]></title><link>https://blog.csdn.net/August_zero/article/details/164049007</link><guid>https://blog.csdn.net/August_zero/article/details/164049007</guid><author>August_zero</author><pubDate>Tue, 25 Aug 2026 10:54:15 +0800</pubDate><description><![CDATA[它负责把模型与工具、Skills、Session、Sandbox、Storage、Agent Loop、调度以及 UI 等能力连接起来。如果你已经开始使用 ChatGPT、Claude、Gemini 等 AI 产品，却对 AGI、RAG、上下文窗口、缓存、微调这些词只有一个模糊印象，那么可以先从这篇文章建立一套基本认知。模型当然非常重要，但它能够看到什么、调用什么工具、保存什么状态、运行在什么环境中，同样会直接影响最终效果。如果模型没有联网、搜索或其他外部工具，那么训练结束之后发生的事情，它无法凭空知道。]]></description><category></category></item><item><title><![CDATA[为什么线程不能说睡就睡？看懂等待与唤醒机制]]></title><link>https://blog.csdn.net/August_zero/article/details/163800662</link><guid>https://blog.csdn.net/August_zero/article/details/163800662</guid><author>August_zero</author><pubDate>Sun, 16 Aug 2026 16:35:42 +0800</pubDate><description><![CDATA[什么时候睡？短暂空闲可以继续尝试或自旋；空闲持续较久后再进入阻塞。调度器需要在响应速度和 CPU 消耗之间取平衡。怎样保证不会错过通知？Condition Variable 使用 predicate 与等待协议保证状态正确；Parker 则把一次尚未消费的通知保存在原子状态中。醒来后能不能正确看到任务？线程恢复执行之后，还需要依靠正确的内存同步关系读取已经发布的数据。机制主要职责围绕条件进行阻塞等待等待原子状态变化Parker管理 Worker 的 Park / Unpark 状态保存和消费许可。]]></description><category></category></item><item><title><![CDATA[为什么高性能调度器都在“偷任务”？从无锁队列看懂工作窃取]]></title><link>https://blog.csdn.net/August_zero/article/details/163675267</link><guid>https://blog.csdn.net/August_zero/article/details/163675267</guid><author>August_zero</author><pubDate>Tue, 11 Aug 2026 20:54:44 +0800</pubDate><description><![CDATA[Owner 从bottom一侧取任务。top bottom↓ ↓Owner 从右边拿 T5，Thief 从左边拿 T1，两者互不影响。只剩最后一个任务此时 Owner 和 Thief 可能同时竞争同一个元素。bottom--再根据top判断当前状态。如果发现这是最后一个任务，Owner 就必须通过 CAS 与 Thief 竞争topCAS 成功→ Owner 获得任务CAS 失败→ 某个 Thief 已经获得任务这里正是 Chase-Lev 最关键的同步位置。]]></description><category></category></item><item><title><![CDATA[写好第一个 C++ 测试：从 GoogleTest 到测试分层]]></title><link>https://blog.csdn.net/August_zero/article/details/163399320</link><guid>https://blog.csdn.net/August_zero/article/details/163399320</guid><author>August_zero</author><pubDate>Sun, 02 Aug 2026 10:00:00 +0800</pubDate><description><![CDATA[一套可靠的 C++ 测试体系，不是把所有内容都放进一个大型冒烟测试，也不是为每一行代码都编写测试。用单元测试验证独立规则；用组件测试验证模块内部协作；用真实集成测试验证数据库等基础设施；用少量 E2E 保护关键主链路；用 Smoke 快速确认程序能够基本运行。测试最终需要回答的不是：这段代码有没有执行？而是：在明确的初始条件下执行某个操作后，软件是否产生了正确结果？]]></description><category></category></item><item><title><![CDATA[HTTP 超时之后，服务端到底执行了吗？——从幂等性到安全重试的设计]]></title><link>https://blog.csdn.net/August_zero/article/details/163222608</link><guid>https://blog.csdn.net/August_zero/article/details/163222608</guid><author>August_zero</author><pubDate>Mon, 27 Jul 2026 00:46:14 +0800</pubDate><description><![CDATA[幂等性并不是给接口增加一个request_id字段那么简单。如何标识同一次业务意图如何判断重试内容是否相同如何持久化第一次处理结果如何处理并发重复请求如何让回执与业务写入原子提交客户端如何保存原请求并正确重试其中最重要的认知仍然是：网络超时之后，服务端状态是未知的。一旦接受这个事实，很多设计选择就会变得自然：客户端必须保留原请求，重试必须复用相同幂等键，服务端必须保存请求指纹和首次响应，幂等回执必须与业务数据处于同一个事务中。]]></description><category></category></item><item><title><![CDATA[`co_await` 按下暂停键之后：从零看懂 C++20 协程]]></title><link>https://blog.csdn.net/August_zero/article/details/162788078</link><guid>https://blog.csdn.net/August_zero/article/details/162788078</guid><author>August_zero</author><pubDate>Sat, 11 Jul 2026 12:24:20 +0800</pubDate><description><![CDATA[协程没有让等待消失，只是把等待从线程手中拿走，交给事件系统管理。编译器把函数变成可暂停的状态机，Awaiter 把协程句柄交给外部事件，调度器再把已经就绪的协程交给工作线程。看懂这条链路后，co_await就不再像魔法，而是状态机、所有权和调度协议的一次简洁握手。暂停必须有人保管，恢复必须有且只有一次，结束必须覆盖所有出口。]]></description><category></category></item><item><title><![CDATA[Codex Desktop 新建会话无法发送消息：一次由旧版 CLI 路径引发的故障排查]]></title><link>https://blog.csdn.net/August_zero/article/details/162520362</link><guid>https://blog.csdn.net/August_zero/article/details/162520362</guid><author>August_zero</author><pubDate>Thu, 02 Jul 2026 14:47:25 +0800</pubDate><description><![CDATA[最近在使用 Codex 的时候又遇到了一个问题，想着干脆专门记录下来，也方便遇到相同情况的朋友通过这篇文章快速解决。]]></description><category></category></item><item><title><![CDATA[手贱把 Codex 切到 WSL 后，我花了大半天修复它]]></title><link>https://blog.csdn.net/August_zero/article/details/162343873</link><guid>https://blog.csdn.net/August_zero/article/details/162343873</guid><author>August_zero</author><pubDate>Fri, 26 Jun 2026 15:48:50 +0800</pubDate><description><![CDATA[周一早上，在床上一蹬腿，把腿拉伤了。于是欢天喜地地跟导员请了假，想着终于可以安静地写一上午项目了，而且寝室里还只有我一个人。结果因为手贱，大半天时间全花在修复 Codex 上了，代码是一点没写……]]></description><category></category></item><item><title><![CDATA[为什么一提到 C++ 大家都会直接想到性能、速度、底层这些标签]]></title><link>https://blog.csdn.net/August_zero/article/details/162228002</link><guid>https://blog.csdn.net/August_zero/article/details/162228002</guid><author>August_zero</author><pubDate>Tue, 23 Jun 2026 11:25:52 +0800</pubDate><description><![CDATA[C++ 让你自己动手操作内存地址，而不是交给虚拟机托管。]]></description><category></category></item><item><title><![CDATA[刚开始接触线程？C++这三个异步杀器你必须知道！]]></title><link>https://blog.csdn.net/August_zero/article/details/162105770</link><guid>https://blog.csdn.net/August_zero/article/details/162105770</guid><author>August_zero</author><pubDate>Thu, 18 Jun 2026 17:52:42 +0800</pubDate><description><![CDATA[异步 = 发起任务 + 立即返回凭证 + 稍后通过凭证取结果。至于背后用的是多线程还是单线程，是具体实现细节。看到这里,你可能还是对异步和多线程的区分有些似懂非懂,但不要紧,我们先往下文推进,之后会有解释。]]></description><category></category></item></channel></rss>