.NET-szemétgyűjtés konfigurálása
A jó teljesítmény érdekében fontos, hogy a .NET szemétgyűjtést a silófolyamathoz a megfelelő módon konfigurálja. A csapat eredményei alapján a beállítások legjobb kombinációja a beállítás gcServer=true
és gcConcurrent=true
a . Ezeket az értékeket a C# projektben (.csproj) vagy egy app.configban konfigurálhatja. További információ: A szemétgyűjtés ízei.
.NET Core és .NET 5+
Ez a módszer nem támogatott a teljes .NET-keretrendszer
<PropertyGroup>
<ServerGarbageCollection>true</ServerGarbageCollection>
<ConcurrentGarbageCollection>true</ConcurrentGarbageCollection>
</PropertyGroup>
.NET-keretrendszer
A teljes .NET-keretrendszer összeállító SDK-stílusú projekteknek továbbra is ezt a konfigurációs stílust kell használniuk, tekintsünk egy példa app.config XML-fájlt:
<configuration>
<runtime>
<gcServer enabled="true"/>
<gcConcurrent enabled="true"/>
</runtime>
</configuration>
Ez azonban nem olyan egyszerű, ha egy siló egy Azure Worker-szerepkör részeként fut, amely alapértelmezés szerint a munkaállomás GC használatára van konfigurálva. Van egy releváns blogbejegyzés, amely bemutatja, hogyan állíthatja be ugyanazt a konfigurációt egy Azure Worker-szerepkörhöz, lásd : Kiszolgálói szemétgyűjtési mód az Azure-ban.
Fontos
A kiszolgáló szemétgyűjtése csak többprocesszoros számítógépeken érhető el. Ezért még akkor is, ha a szemétgyűjtést az application .csproj fájlon vagy a hivatkozott blogbejegyzés szkriptjein keresztül konfigurálja, ha a siló egy egymagos (virtuális) gépen fut, akkor sem fogja megkapni az előnyöket gcServer=true
. További információ: GC Gépház. IsServerGC megjegyzések.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: