- nike air max 90 pas cher
- 16373
|
Prefazione
Questa versione di .Net8 presenta molti cambiamenti rispetto a .Net7. Questo post analizza le modifiche apportate alle prestazioni di alcuni tipi e i nuovi tipi ufficialmente consigliati per migliorare le prestazioni delle applicazioni.
Panoramica
1.System.Collections.Frozen
Lo spazio dei nomi Frozen include i tipi di collezione FrozenDictionary<TKey,TValue> e FrozenSet. Questi tipi non consentono alcuna modifica alle chiavi e ai valori dopo la creazione della collezione. Questo requisito consente operazioni di lettura più rapide (ad esempio, TryGetValue()). Questi tipi sono particolarmente utili per le raccolte che vengono popolate al primo utilizzo e poi mantenute, ad esempio, per un lungo periodo di servizio:
2.System.Buffers.IndexOfAnyValues
Tipi destinati a essere passati ai metodi che cercano la prima corrispondenza di qualsiasi valore nell'insieme passato. Ad esempio, String.IndexOfAny(Char[]) trova la prima corrispondenza di qualsiasi carattere dell'array specificato nella stringa che lo chiama. NET 8 aggiunge nuovi sovraccarichi di metodi, come String.IndexOfAny e MemoryExtensions.IndexOfAny, che accettano istanze dei nuovi tipi. Quando si creano istanze di System.Buffers.IndexOfAnyValues, tutti i dati necessari per ottimizzare le ricerche successive vengono ricavati in quel momento, il che significa che il lavoro viene svolto in anticipo.
3. System.Text.
può essere utilizzato per ottimizzare stringhe di formato sconosciute in fase di compilazione (ad esempio, stringhe di formato caricate da un file di risorse). Richiede un po' di tempo in più per eseguire operazioni come il parsing delle stringhe in anticipo, ma ciò consente di risparmiare il lavoro che viene svolto ogni volta che viene utilizzato.
4. System.Buffers.IndexOfAnyValues
Tipo destinato a essere passato ai metodi che cercano la prima corrispondenza di qualsiasi valore nell'insieme passato. Ad esempio, String.IndexOfAny(Char[]) trova la prima corrispondenza di qualsiasi carattere dell'array specificato nella stringa che lo chiama. NET 8 aggiunge nuovi sovraccarichi di metodi, come String.IndexOfAny e MemoryExtensions.IndexOfAny, che accettano istanze dei nuovi tipi. Quando si creano istanze di System.Buffers.IndexOfAnyValues, tutti i dati necessari per ottimizzare le ricerche successive vengono ricavati in quel momento, il che significa che il lavoro viene svolto in anticipo.
5. System.Text.
può essere utilizzato per ottimizzare le stringhe di formato sconosciute in fase di compilazione (ad esempio, le stringhe di formato caricate da un file di risorse). Ci vorrà un po' di tempo in più per eseguire operazioni come il parsing delle stringhe, ma in questo modo si risparmia il lavoro da fare ogni volta che viene utilizzato.
6. System.Numerics e System.Runtime.Intrinsics
Miglioramenti ai namespace System.Numerics e System.Runtime.Intrinsics Vector256, Matrix3x2 e Matrix4x4 migliorano l'accelerazione hardware in .NET 8. Ad esempio, Vector256 è stato reimplementato come 2xVector128 dove possibile. Le funzioni interne all'hardware sono ora annotate utilizzando la proprietà ConstExpected. Questo assicura che l'utente sappia quando le costanti sono necessarie all'hardware sottostante e quando i valori non costanti possono danneggiare inaspettatamente le prestazioni.
Riferimento: https: //learn.microsoft.com/zh-cn/dotnet/core/whats-new/dotnet-8 Originale: https: //mp.weixin.qq.com/s/EMvJcu9WzQpCmi2ouzRBQw
|
Precedente: VSTO (F) per annullare o bloccare il salvataggio del documento WordNext: ASP.NET Core (XVIII) personalizzato semplice OutputCache cache di uscita
|