<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>杂谈 on syno blog</title><link>https://synodriver.github.io/tags/%E6%9D%82%E8%B0%88/</link><description>Recent content in 杂谈 on syno blog</description><generator>Hugo</generator><language>locale</language><lastBuildDate>Tue, 21 Apr 2026 22:23:42 +0800</lastBuildDate><atom:link href="https://synodriver.github.io/tags/%E6%9D%82%E8%B0%88/index.xml" rel="self" type="application/rss+xml"/><item><title>论"异步"工作</title><link>https://synodriver.github.io/post/async_work/</link><pubDate>Tue, 21 Apr 2026 22:23:42 +0800</pubDate><guid>https://synodriver.github.io/post/async_work/</guid><description>&lt;h1 id="论异步工作"&gt;论&amp;quot;异步&amp;quot;工作&lt;/h1&gt;
&lt;p&gt;&amp;ndash; &lt;em&gt;很可惜，你不是事件循环，上下文切换的开销巨大&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;所谓异步工作，其实有个先验条件，那就是你的任务得是io密集的，即做一会就可以yield出去，等待外部回复的。
这种工作可以异步的做。一旦工作是cpu密集的了，基本就没法yield了。你总得干这么多活。
更可怕的是多个&lt;code&gt;fd&lt;/code&gt;同时就绪，这就麻烦大了，你得一起处理，这时候往往疲于奔命，延迟剧增，要是这些就绪
的task还含有cpu密集部分，那就更麻烦了。&lt;/p&gt;</description></item></channel></rss>