
OpenMP 简介
虽然POSIX提供了诸如pthread,以及平台自己会提供一些多线程的API,但是都显得比较复杂。OpenMP则提供了跨平台的多线程接口,为常用的场景提供了统一的多线程原语,通过编译器提示简化了并行化代码的开发。本文将介绍OpenMP的使用…

虽然POSIX提供了诸如pthread,以及平台自己会提供一些多线程的API,但是都显得比较复杂。OpenMP则提供了跨平台的多线程接口,为常用的场景提供了统一的多线程原语,通过编译器提示简化了并行化代码的开发。本文将介绍OpenMP的使用…

现成的博客系统有很多,用 Hugo、Astro 或者一个 Notion 页面,十分钟就能上线。但这个博客的目的不是“有个博客”,而是把 Web 全栈完整走一遍。能外包的功能,刻意自己实现:整个项目分成六个阶段,每个阶段结束时都必须能部署上线…

Apple 的 Human Interface Guidelines 是为原生 app 写的,但其中的很多原则——层级清晰、内容优先、尊重用户的系统设置——在 Web 上一样成立。难点在于把 pt、Dynamic Type、语义色这些概念翻…

这个项目是一个 monorepo:前端、API 和共享的 schema 包放在一起。最开始的计划是 pnpm workspace,最后换成了 Bun。Bun 同时是三样东西:包管理器、脚本运行器、JavaScript 运行时。它们可以分开选…

中文和英文混排时,有几个细节值得单独处理。拉丁字母有升部和降部,视觉上自带留白;汉字是方块字,每个字都把格子填满。所以中文正文需要更大的行高,1.7 左右读起来比较舒服,而英文网页常见的 1.4–1.5 对中文来说太挤了。一行太长,眼睛换行…

Markdown 允许内嵌 HTML,这意味着“渲染用户提交的 Markdown”本质上等于“渲染用户提交的 HTML”。下面这段 Markdown 如果原样转成 HTML 插入页面,就会执行脚本:第二层是兜底:即使第一层的配置以后被人改了…