Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
.NET, .NET çalışma zamanının davranışını yapılandırmak için aşağıdaki mekanizmaları sağlar:
| Mekanizma | Notlar |
|---|---|
| runtimeconfig.json dosyası | Ayarı belirli bir uygulamaya uygular. Uygulamanızın birden çok örneği tek bir sistemde aynı anda çalıştırılırsa ve her birini en iyi performans için yapılandırmak istiyorsanız bu dosyayı kullanın. |
| MSBuild özellikleri | Ayarı belirli bir uygulamaya uygular. MSBuild özellikleri ,runtimeconfig.jsonayarlarına göre önceliklidir. |
| Ortam değişkenleri | Ayarı tüm .NET uygulamalarına uygular. |
Bazı yapılandırma değerleri, AppContext.SetSwitch yöntemi program aracılığıyla çağrılarak da ayarlanabilir.
Uyarı
Bu bölümdeki makaleler .NET çalışma zamanının yapılandırmasıyla ilgilidir. Bir uygulamayı .NET Framework'ten .NET'e geçiriyorsanız ve app.config dosyasının yerini almak istiyorsanız bkz. .NET'e yükselttikten sonra modernleştirme. .NET uygulamalarına özel yapılandırma değerleri sağlama hakkında bilgi için bkz. .NET'te yapılandırma.
Belgelerin bu bölümündeki makaleler, hata ayıklama ve çöp toplama gibi kategorilere göre düzenlenmiştir. Uygun olduğunda, runtimeconfig.json dosyaları, MSBuild özellikleri, ortam değişkenleri ve karşılaştırma amacıyla .NET Framework projeleri için app.config dosyaları yapılandırma seçenekleri olarak gösterilir.
runtimeconfig.json
Proje oluşturulduğunda çıkış dizininde [appname].runtimeconfig.json dosyası oluşturulur. Proje dosyasıyla aynı klasörde birruntimeconfig.template.json dosyası varsa, içerdiği tüm yapılandırma seçenekleri [appname].runtimeconfig.json dosyasına eklenir. Uygulamayı kendiniz oluşturuyorsanız yapılandırma seçeneklerini runtimeconfig.template.json dosyasına yerleştirin. Uygulamayı yalnızca çalıştırıyorsanız, doğrudan [appname].runtimeconfig.json dosyasına ekleyin.
Uyarı
- [appname].runtimeconfig.json dosyası, sonraki derlemelerde üzerine yazılarak değiştirilir.
- Uygulamanız
OutputTypedeğilseExeve yapılandırma seçeneklerinin runtimeconfig.template.json'den [appname].runtimeconfig.jsonkopyalanmasını istiyorsanız, proje dosyanızda açıkça olarakGenerateRuntimeConfigurationFilesolarak ayarlamanıztruegerekir. runtimeconfig.json dosyası gerektiren uygulamalar için bu özellik varsayılan olarak olaraktruegösterilir.
runtimeconfig.json veya runtimeconfig.template.json dosyasının configProperties bölümünde çalışma zamanı yapılandırma seçeneklerini belirtin. Bu bölümde şu form vardır:
"configProperties": {
"config-property-name1": "config-value1",
"config-property-name2": "config-value2"
}
Örnek [appname].runtimeconfig.json dosyası
Çıkış JSON dosyasına seçenekleri yerleştirdiyseniz, bunları özelliğinin runtimeOptions altına yerleştirin.
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Globalization.UseNls": true,
"System.Net.DisableIPv6": true,
"System.GC.Concurrent": false,
"System.Threading.ThreadPool.MinThreads": 4,
"System.Threading.ThreadPool.MaxThreads": 25
}
}
}
Örnek runtimeconfig.template.json dosyası
Seçenekleri şablon JSON dosyasına yerleştiriyorsanız, özelliğini runtimeOptions.
{
"configProperties": {
"System.Globalization.UseNls": true,
"System.Net.DisableIPv6": true,
"System.GC.Concurrent": false,
"System.Threading.ThreadPool.MinThreads": "4",
"System.Threading.ThreadPool.MaxThreads": "25"
}
}
MSBuild özellikleri
Bazı çalışma zamanı yapılandırma seçenekleri, SDK stilindeki .NET projelerinin .csproj veya .vbproj dosyasındaki MSBuild özellikleri kullanılarak ayarlanabilir. MSBuild özellikleri ,runtimeconfig.template.json dosyasında ayarlanan seçeneklerden önceliklidir.
Belirli bir MSBuild özelliği olmayan çalışma zamanı yapılandırma ayarları için bunun yerine MSBuild öğesini kullanabilirsiniz RuntimeHostConfigurationOption . özniteliğinin ayar adını kullanın.
.NET çalışma zamanının davranışını yapılandırmak için MSBuild özelliklerine sahip sdk stili bir proje dosyası örneği aşağıda verilmiştir:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
</PropertyGroup>
<PropertyGroup>
<ConcurrentGarbageCollection>false</ConcurrentGarbageCollection>
<ThreadPoolMinThreads>4</ThreadPoolMinThreads>
<ThreadPoolMaxThreads>25</ThreadPoolMaxThreads>
</PropertyGroup>
<ItemGroup>
<RuntimeHostConfigurationOption Include="System.Globalization.UseNls" Value="true" />
<RuntimeHostConfigurationOption Include="System.Net.DisableIPv6" Value="true" />
</ItemGroup>
</Project>
Çalışma zamanının davranışını yapılandırmaya yönelik MSBuild özellikleri, atık toplama gibi her alanın tek tek makalelerinde belirtilir. Ayrıca SDK stilindeki projeler için MSBuild özellikleri başvurusunun Çalışma Zamanı yapılandırması bölümünde de listelenirler.
Ortam değişkenleri
Ortam değişkenleri bazı çalışma zamanı yapılandırma bilgilerini sağlamak için kullanılabilir. Ortam değişkenleri olarak belirtilen yapılandırma düğümleri genellikle ön ekini DOTNET_alır. (.NET Framework çalışma zamanı yapılandırması için COMPlus_ bunun yerine ön eki kullanın.)
Ortam değişkenlerini Windows Denetim Masası'ndan, komut satırından veya hem Windows hem de Unix tabanlı sistemlerde yöntemini çağırarak Environment.SetEnvironmentVariable(String, String) program aracılığıyla tanımlayabilirsiniz.
Aşağıdaki örneklerde, komut satırında ortam değişkeninin nasıl ayarlanacağı gösterilmektedir:
# Windows
set DOTNET_GCRetainVM=1
# Powershell
$env:DOTNET_GCRetainVM="1"
# Unix
export DOTNET_GCRetainVM=1