两年后,MicrosoftVSCodePowerShell获得了重大更新。微软官员SydneySmith在博文中表示:本次更新代表了对PowerShellEditorServices核心PowerShell引擎的全面检修,旨在打造更可靠、更稳定的用户体验。这个版本代表了将近两年的工作,它是我们对用户在过去几年中提出的许多问题的回应。前面提到的PowerShellEditorServices是该工具的语言服务器,使用语言服务器协议,用于提供特定于编程语言的功能,例如自动完成、IntelliSense和转到定义。为了提高可靠性/稳定性、测试、与以前版本的功能对等性等,该团队专注于该工具的线程模型。之前的IntegratedConsole,即PowerShell扩展提供的Shell,是通过在共享的主运行空间上设置线程池任务来运行的,而LSP的服务是通过PowerShell空闲事件来完成的。这导致了开销、线程问题和复杂的实现,此更新解决了作为同步、单线程运行时的PowerShell与作为异步、多线程服务的语言服务器之间的不对称性。这些不对称性通过借用JavaScript事件循环的新专用管道线程解决,因此代码在正确的线程上同步运行,以更可靠和无错误的代码防止许多竞争条件。“这一变化彻底改变了我们为LSP请求提供服务的方式、集成控制台的工作方式、PSReadLine的集成方式、调试的实现方式、远程处理的方式以及PowerShell编辑器服务中的其他长尾功能,”史密斯说。微软在该版本的更新中总共添加了6,000行代码并删除了12,000行代码。按照官方的说法,此次更新除了带来新的特性,还让扩展后端更易维护、更高效、更易理解。为了给PowerShell扩展带来更好的稳定性,微软开发团队在过去6个月里一共推出了13个PowerShell预览版进行测试。查看VSCodeMarketplace中PowerShell和PowerShellPreview的评分,也可以看出用户对此次更新的满意度。前者历史悠久,已安装约580万次,平均得分为3.7(满分5分)。.后者的安装次数已超过20万次,平均得分为4.6。可以在更改日志中找到对PowerShell扩展的完整更改。开发人员可以在项目的GitHub页面上提交任何错误和功能反馈。本文转自OSCHINA文章标题:时隔两年,MicrosoftVSCodePowerShell迎来重大更新本文地址:https://www.oschina.net/news/194880/vs-code-powershell
