10 月 26 日消息,據(jù) Neowin 報(bào)道,此前微軟已經(jīng)宣布 Visual Studio 2022 正式版將在 11 月 8 日推出,由于該 IDE 在過去幾個(gè)月里已經(jīng)在 Windows 和 Mac 上進(jìn)行了預(yù)覽測試,所以開發(fā)者對期待的東西已經(jīng)有了相當(dāng)?shù)牧私狻?/p>
Visual Studio 2022 將支持 64 位版本,支持.NET 6 和 C++ 20,為核心調(diào)試器提供更好的性能,并在實(shí)時(shí)共享會話中支持文本聊天。它為 IntelliCode 引擎提供了更多的功能,改進(jìn)了代碼搜索,并提供了更好的異步協(xié)作,與提交和審查 GitHub 等平臺的 Pull Request 有關(guān)的新邏輯。在 Windows 上,它對用戶界面的可訪問性進(jìn)行了改進(jìn),而在 Mac 上,它還具有升級的用戶界面 UI,利用了原生 macOS 的用戶界面元素。
現(xiàn)在,微軟已經(jīng)透露,它還與 Epic Games 合作,為虛幻引擎開發(fā)者提高了 Visual Studio 2022 的性能。這是通過使語義高亮和 IntelliSense 在利用該技術(shù)棧的項(xiàng)目中啟動得更快來實(shí)現(xiàn)的。
微軟測試了 Visual Studio 2019 16.11.5 和 Visual Studio 2022 Preview 6 之間的性能差異。測試是在一臺搭載 3GHz Core i7-9700 處理器、64GB 內(nèi)存和 SSD 的設(shè)備上使用虛幻引擎 4.27.1 樣本項(xiàng)目進(jìn)行的。進(jìn)行了四次運(yùn)行,其結(jié)果的平均值可以在下面看到。
結(jié)果
在 Visual Studio 2019 上打開一個(gè)文件時(shí),IntelliSense 需要 11.0 秒才能準(zhǔn)備好,并且語義代碼著色也要顯示出來。打開一個(gè)不同的文件需要同樣的時(shí)間來達(dá)到相同的狀態(tài)。關(guān)閉并重新打開同一個(gè)文件,需要 1.0 秒才能達(dá)到準(zhǔn)備狀態(tài)。
相比之下,Visual Studio 2022 花了 7.2 秒的時(shí)間來準(zhǔn)備第一個(gè)文件,對于任何后續(xù)的文件來說,花了 0.4 秒。
▲ 顯示 Visual Studio 2019 與 2022 中 IntelliSense 啟動性能改進(jìn)的圖表
分析
在改變之前,每個(gè)翻譯單元,即你項(xiàng)目中的 C++ 和頭文件,都是從頭開始的,它們之間沒有狀態(tài)重用。重新打開同一個(gè)文件需要 1 秒鐘;但是,由于文件之間沒有共享 PCH,所以第一次打開任何文件都需要同樣的時(shí)間來顯示語義高亮和 IntelliSense 準(zhǔn)備好。
在使用 Visual Studio 2022 的虛幻引擎 4.27.1 項(xiàng)目中,生成的項(xiàng)目文件被更新,以配置 IntelliSense 在各翻譯單元之間共享編譯狀態(tài)。因此,在 Visual Studio 中切換文件時(shí),語義代碼著色和 IntelliSense 完成的速度將大大加快(0.4 秒)。
此外,VS2022 中的 C++ IntelliSense 改進(jìn)能夠?qū)?zhǔn)備時(shí)間降低 1.5 倍,從 11 秒降至 7.4 秒。這一變化將使所有使用 IntelliSense 的 C++ 開發(fā)人員受益,而不僅僅是虛幻引擎開發(fā)人員。
Epic Games 首席程序員 Ben Marsh 對與微軟的合作以及整體的好處有以下的看法。
“在虛幻引擎解決方案中,我們一直在為 IntelliSense 的性能掙扎,但是這些變化展示了巨大的改進(jìn)。更快的反饋和更少的等待有助于開發(fā)人員繼續(xù)專注于制作令人驚嘆的游戲。”