Visual Studio中的C++更新及WSL2
WSL2原生支持预告
在2019年,我们的开发团队发布了对Linux(WSL)子系统的C++原生支持。
这里所说的”原生支持”,是指所有的命令都会被本机执行,而不是通过远程SSH来执行。
从那时开始,WSL2就释出了,我们陆续不断地收到了开发者关于在VisualStudio中支持WSL2的请求。
这篇文章的主要目的有以下几个方面:
> 详细介绍我们现有对WSL1和WSL2的支持情况。
> 预告我们关于WSL2原生支持的开发计划。
> 了解开发者社区对WSL1原生支持的使用反馈。
当前对WSL1和WSL2的支持情况
目前,我们对WSL的原生支持可以很好的在WSL1上工作。所有的命令都是通过wsl.exe进行本机执行,这取决于挂在在/mnt文件夹下的Windows驱动,来实现从WSL中访问本机源文件。
这些命令在WSL2上的执行效率会比较慢一些,因为在Windows和Linux之间的文件传输性能会快于在WSL1和WSL2之间。
为了解决这个执行命令缓慢的问题,你可以在你的本机WSL2安装中安装和执行SSH。
你可以在Visual Studio Connection Manager中添加一个新的SSH连接。如果需要了解关于这个主题的更多信息,可以观看我们之前的一些文章。
对WSL2的原生支持
目前,我们正在开发Visual Studio中原生支持WSL2的功能。
这个功能可以让开发者在WSL2上无缝地进行构建和调试,而不需要添加SSH连接,并且可以解决上面说到的命令执行缓慢的问题。
工作原理介绍
在底层实现上,Visual Studio会执行一个本机文件同步,从Windows文件系统上拷贝文件到WSL2的文件系统上。
因为,上面我们说过,在Window和Linux之间的文件传输性能会高于WSL2,所以,我们不能像之前的WSL1上访问挂载的Windows驱动。
本机文件同步,会在Visual Studio检测到你正在使用WSL2时自动进行,使用者不需要做任何操作。
有了这个功能,我们就不再需要建立SSH远程连接,这样就解决了上面说到性能降级问题。同时,这个功能的引入,不会对WSL2继续本机构建和调试产生任何影响。
元芳,你怎么看?
如果你用过Visual Studio对WSL1的原生支持,可以跟我们说说你的一些使用体验,也可以说说你对我们的WSL2的开发计划的看法。
总结
所以,咱们的策略是:先有,然后慢慢优化,最终做到极致。
最后
Microsoft Visual C++团队的博客是我非常喜欢的博客之一,里面有很多关于Visual C++的知识和最新开发进展。大浪淘沙,如果你对Visual C++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。
本文来自:《C++ with Visual Studio and WSL2》
- 下一篇: 键盘快捷键二三事
- 上一篇: 构建吞吐量系列之模板元编程基础
相关推荐
- 小技巧:远程桌面默认开启ClearType
- Posted on 04月16日
- OpenStack专题:Executable not found: tgtadm
- Posted on 01月11日
- 为什么BIOS里的时间是本地时间
- Posted on 09月26日
- 实战经验:使用ClipChildren属性减少界面闪烁
- Posted on 08月05日
评论已关闭。