Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 3878|Yanıt: 1

[İletişim] [Dön]. NET 8 Yeni Eklenen Yüksek Performanslı Tipler

[Bağlantıyı kopyala]
Yayınlandı 7.05.2023 09:37:47 | | |
önsöz

. Net8 versiyonu, karşılaştırıldığında. Net7 çok değişti. Bu makalede, uygulama performansını iyileştirmeye yönelik resmi olarak önerilen yeni performans değişikliklerine bakalım.

Wraparound

1.Sistem.Koleksiyonlar.Dondurulmuş

İsim alanları arasında FrozenDictionary< TKey, TValue> ve FrozenSet koleksiyon türleri bulunur. Bir koleksiyon oluşturulduktan sonra, bu türler anahtarlarda ve değerlerde herhangi bir değişikliğe izin vermez. Bu gereksinim, daha hızlı okuma işlemlerini mümkün kılar (örneğin, TryGetValue()). Bu türler, ilk kullanımda doldurulup uzun vadeli hizmet için tutulan koleksiyonlar için özellikle faydalıdır, örneğin:

2.System.Buffers.IndexOfAnyValues

Tip, geçen koleksiyondaki herhangi bir değerin ilk eşleşmesini bulma yöntemine aktarılması amaçlanmıştır. Örneğin, String.IndexOfAny(Char[]) belirtilen dizide herhangi bir karakterin ilk eşleşmesini arar. NET 8, yeni tür örnekleri kabul eden String.IndexOfAny ve MemoryExtensions.IndexOfAny gibi yeni metod aşırı yüklenmeleri ekler. System.Buffers.IndexOfAnyValues örneği oluşturduğunuzda, sonraki aramaları optimize etmek için gereken tüm veriler o anda türetilir, yani iş önceden yapılmıştır.

3.System.Text.CompositeFormat

Türler, derleme sırasında bilinmeyen biçim dizelerini optimize etmek için kullanılabilir (örneğin, biçim dizileri kaynak dosyalarından yüklenir). Dizileri ayrıştırmak gibi işleri baştan yapmak biraz ekstra zaman alıyor, ama bu her kullandığınızda yapılan işten tasarruf eder.

4.System.Buffers.IndexOfAnyValues

Tip, geçen koleksiyondaki herhangi bir değerin ilk eşleşmesini bulma yöntemine aktarılması amaçlanmıştır. Örneğin, String.IndexOfAny(Char[]) belirtilen dizide herhangi bir karakterin ilk eşleşmesini arar. NET 8, yeni tür örnekleri kabul eden String.IndexOfAny ve MemoryExtensions.IndexOfAny gibi yeni metod aşırı yüklenmeleri ekler. System.Buffers.IndexOfAnyValues örneği oluşturduğunuzda, sonraki aramaları optimize etmek için gereken tüm veriler o anda türetilir, yani iş önceden yapılmıştır.

5.System.Text.CompositeFormat

Türler, derleme sırasında bilinmeyen biçim dizelerini optimize etmek için kullanılabilir (örneğin, biçim dizileri kaynak dosyalarından yüklenir). Dizileri ayrıştırmak gibi işleri baştan yapmak biraz ekstra zaman alıyor, ama bu her kullandığınızda yapılan işten tasarruf eder.

6. System.Numerics ve System.Runtime.Intrinsics

System.Numerics ve System.Runtime.Intrinsics isim alanlarında iyileştirmeler. Vector256, Matrix3x2 ve Matrix4x4, .NET 8'de donanım hızlandırmasını iyileştirir. Örneğin, Vector256 mümkün olduğunda 2xVector128'i yeniden uygulamıştır. Donanım iç bileşenleri artık ConstExpected özelliğini kullanarak notlama yapıyor. Bu sayede kullanıcılar, temel donanımın ne zaman sabitlere ihtiyaç duyduğunu ve olağanüstü değerlerin performansa zarar verebileceğini bilmelerini sağlar.

Referans:Bağlantı girişi görünür.
Özgün:Bağlantı girişi görünür.





Önceki:VSTO (VI), Word belgesinin kaydedilmesini iptal eder veya engeller
Önümüzdeki:ASP.NET Core (18) Basit bir OutputCache çıkış önbelleğini özelleştirin
Yayınlandı 7.05.2023 15:36:17 |
Öğrenmeyi öğren
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com