微软推出VS Code PowerShell的重大更新 PowerShell 引擎的彻底改造
微软开发团队近日更新了用于 Visual Studio Code 的 PowerShell 扩展,这是一次历时约两年的重大更新。这次更新代表了对 PowerShell Editor Services 的核心 PowerShell 引擎的彻底改造,旨在创造一个更可靠和稳定的用户体验。这个版本代表了近两年的工作,它是我们对用户在过去几年中所提出的许多问题的回应。

前面提到的 PowerShell Editor Services 是该工具的语言服务器,利用语言服务器协议,用于提供编程语言的特定功能,如自动补全、IntelliSense 和转到定义等。
为了实现提高可靠性 / 稳定性、测试、与以前版本的功能同等性等目标,该团队专注于该工具的线程模型。
以前的 Integrated Console,即 PowerShell 扩展提供的 Shell,是通过在一个共享的主运行空间上设置线程池任务来运行的,而 LSP 的服务是通过 PowerShell 空闲事件完成的。这导致了开销、线程问题和复杂的实现,此次更新解决了 PowerShell 作为同步、单线程运行时和语言服务器作为异步、多线程服务之间的不对称问题。
这些不对称问题通过一个新的专用管道线程来解决,该线程借用了 JavaScript 的事件循环,因此代码在正确的线程上同步运行,以更可靠和无错误的代码来防止许多竞赛条件。
微软在该版本的更新中,总共添加了 6000 行代码并删除了 12000 行代码。根据官方说法,此次更新除了带来新功能,还使扩展的后端更易于维护、更高效,以及更易于理解。
为了能够给 PowerShell 扩展带来更好的稳定性,微软开发团队在过去的 6 个月时间里共推出了 13 个 PowerShell 预览版来进行测试。

查看 VS Code Marketplace 中的 PowerShell 和 PowerShell 预览版的评分也能看出用户对此次更新的一个满意度,其中前者历史悠久已经被安装了大约 580 万次,获得了平均 3.7 分(满分 5 分)。后者已经被安装了 20 多万次,获得了平均 4.6 分的成绩。

PowerShell 扩展的完整变化可在更新日志中找到。开发者有任何错误和功能的反馈,都可以在项目的 GitHub 页面上提交。
- 研发/技术总监(CTO)的日常工作都在做些什么?
- ThinkPHP 6.1.2 版本发布,兼容 PHP8.2以及对ThinkORM3.0 版本的支持
- 开源OA 办公系统 — 勾股 OA 4.60.28 发布
- 主流“OpenClaw养虾”产品全解析:腾讯、字节、阿里、百度、小米、智谱、Kimi,哪只“虾”最适合你?
- TinyMCE是一个轻量、简洁、功能强大的富文本编辑器
- Figma封禁大疆,蓝湖MasterGo上线“Figma文件导入功能”
- 企业OA系统开发一般需要多久?开发费用怎样?
- Vite 3.0 发布,下一代的前端工具链
- DevOps已向业务进阶,如何实现项目研发效率的提升?
- 前端开发中项目常用的20多个轮子 快速提高开发效率 建议收藏

