產生揮發性記憶體存取的元資料,以提升在 ARM64 上執行 x64 或 x86 程式碼時的效能。
語法
/volatileMetadata[-]
備註
從 2022 Visual Studio 18.6 開始,/volatileMetadata 預設關閉,必須明確啟用。 要明確停用,請使用 /volatileMetadata-。
/volatileMetadata 透過產生識別易失記憶體位址的元資料,提升 ARM64 上 x64 與 x86 程式碼的模擬效能。 模擬器可以使用此元數據來改善效能,方法是不要在它知道的存取者上使用取得/發行語意來改善效能。 如果沒有此元數據,模擬器會假設所有位址都是揮發性的,並使用取得和釋放語意。
的 /volatileMetadata 一個副作用是您可能會看到 npad 產生的程式代碼中使用的巨集。 這個巨集會展開至指定數目的 NOP 指示,以建立位址以與記憶體屏障產生關聯。 該位址接著會記錄在元數據中,以指出應該使用取得/發行語意來存取它。
備註
在 2019 Visual Studio 16.10 版本到 2022 Visual Studio 中,/volatileMetadata 預設開啟。 從 2022 Visual Studio 18.6 開始,/volatileMetadata 預設關閉。
需求
Visual Studio 2019 16.10 版或更新版本。