这次macOS 26卡顿的根源在于系统底层渲染机制发生了变化,导致Electron原有的实现方式无法适应。如果你正在维护基于Electron的应用程序,建议立即检查项目中的package.json文件,查看是否需要升级Electron版本。

随着macOS 26正式发布,许多用户在第一时间就进行了系统升级,结果却发现了一个棘手的问题:只要运行某些Electron应用程序(比如VS Code),整个系统就会变得异常缓慢,甚至出现完全卡死的情况。
这并非个别现象,而是因为macOS 26采用了全新的图形渲染方式,与Electron的实现机制产生了冲突。
现象
升级到macOS 26后,你可能会遇到以下情况:
• 拖动卡顿:在移动Electron应用窗口时,不仅该窗口会出现卡顿,整个桌面的UI都会出现掉帧,从原本流畅的120fps瞬间跌至60fps甚至更低。
• 多开加重:如果同时运行多个Electron应用,问题会更加明显,甚至连非Electron应用(比如Chrome浏览器或系统设置)也会跟着变卡。最小化窗口会有所缓解,但只要窗口仍在桌面上,就能观察到GPU占用率飙升和风扇狂转。
• 特定操作触发:在滚动聊天窗口、切换标签页或编辑代码时最容易出现问题。查看系统日志会发现WindowServer进程的GPU占用异常升高。
原因
问题出在macOS 26引入了全新的界面效果,比如"液态玻璃"特效,苹果在系统底层调整了窗口圆角和阴影的渲染方式。
而Electron为了实现无边框、自定义圆角等窗口效果,使用了macOS中的一些非公开API来修改系统的默认行为。结果在新的渲染机制下产生了冲突,导致:
• WindowServer负担过重:渲染任务被放大,GPU占用急剧上升。
• 系统整体被拖慢:WindowServer负责整个桌面的绘制,一旦它出现问题,整个macOS的UI都会跟着卡顿。
解决
好消息是,Electron团队已经确认并修复了这个Bug。
解决方案很简单:升级项目中使用的Electron版本即可。
启示
这件事也给开发者提了个醒:
• 避免使用私有API:为了实现窗口阴影、透明度等效果,Electron之前依赖了一些系统内部接口。问题是,苹果一旦改动底层,这些"捷径"马上就会出问题。
• 版本要及时更新:Electron会尽快适配新系统特性。最省事的做法就是保持版本更新,不要长期停留在旧版本。
最后说一句
macOS大版本升级带来兼容性问题是很常见的。
这次macOS 26卡顿,就是因为系统底层的渲染机制变了,Electron老方法顶不住了。
如果你在维护Electron应用,现在就去翻一下package.json,看看是不是该升级Electron了。别等用户来吐槽"怎么一用就卡死",再去补锅。
