VS Code文本缓冲区重实现:告别OOM,拥抱Piece Tree

2025-05-23
VS Code文本缓冲区重实现:告别OOM,拥抱Piece Tree

VS Code 1.21 版本重写了文本缓冲区,大幅提升性能和内存效率。原先基于行的数组实现,在大文件(例如1370万行)下容易导致内存溢出。新实现采用Piece Tree结构,它由多个缓冲区和红黑树组成,有效降低内存占用,并优化了文件打开和编辑速度。虽然查找特定行速度略逊于旧实现,但在实际使用中影响微乎其微。这次重构也避免了原生C++实现带来的性能损耗,证明了巧妙的数据结构和算法设计的重要性。

阅读更多
开发

使用 Visual Studio Code 远程开发在容器内进行开发

2024-07-03
使用 Visual Studio Code 远程开发在容器内进行开发

这篇文章讲解了如何使用 Visual Studio Code 的 Dev Containers 扩展,将容器作为完整的开发环境。你可以打开容器内的任何文件夹,利用 VS Code 的全部功能进行开发。文章详细介绍了如何配置 devcontainer.json 文件来自定义容器环境、管理扩展、转发端口、调试等操作,以及一些高级配置和常见问题的解决方案。

阅读更多