Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 3878|Απάντηση: 1

[Επικοινωνία] [Στροφή]. NET 8 Τύποι υψηλής απόδοσης που προστέθηκαν πρόσφατα

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 7/5/2023 9:37:47 π.μ. | | |
πρόλογος

. Έκδοση Net8, σε σύγκριση με. Το Net7 έχει αλλάξει πολύ. Σε αυτό το άρθρο, ας ρίξουμε μια ματιά σε μερικούς από τους τύπους αλλαγών απόδοσης, επίσημα προτεινόμενους νέους τύπους που στοχεύουν στη βελτίωση της απόδοσης της εφαρμογής.

Περιτύλιγμα

1.Σύστημα.Συλλογές.Κατεψυγμένα

Οι χώροι ονομάτων περιλαμβάνουν τους τύπους συλλογής FrozenDictionary< TKey, TValue> και FrozenSet. Μόλις δημιουργηθεί μια συλλογή, αυτοί οι τύποι δεν επιτρέπουν αλλαγές σε κλειδιά και τιμές. Αυτή η απαίτηση επιτρέπει ταχύτερες λειτουργίες ανάγνωσης (π.χ. TryGetValue()). Αυτοί οι τύποι είναι ιδιαίτερα χρήσιμοι για συλλογές που συμπληρώνονται κατά την πρώτη χρήση και στη συνέχεια διατηρούνται για μακροπρόθεσμη υπηρεσία, όπως:

2.System.Buffers.IndexOfAnyValues

Ο τύπος προορίζεται να περάσει στη μέθοδο εύρεσης της πρώτης αντιστοίχισης οποιασδήποτε τιμής στη συλλογή που πέρασε. Για παράδειγμα, το String.IndexOfAny(Char[]) αναζητά την πρώτη αντιστοίχιση οποιουδήποτε χαρακτήρα στον καθορισμένο πίνακα στη συμβολοσειρά που τον καλεί. Το NET 8 προσθέτει νέες υπερφορτώσεις μεθόδων, όπως String.IndexOfAny και MemoryExtensions.IndexOfAny που δέχονται παρουσίες νέου τύπου. Όταν δημιουργείτε μια παρουσία του System.Buffers.IndexOfAnyValues, όλα τα δεδομένα που απαιτούνται για τη βελτιστοποίηση των επόμενων αναζητήσεων θα προκύψουν εκείνη τη στιγμή, πράγμα που σημαίνει ότι η εργασία γίνεται εκ των προτέρων.

3.System.Text.CompositeFormat

Οι τύποι μπορούν να χρησιμοποιηθούν για τη βελτιστοποίηση συμβολοσειρών μορφοποίησης που είναι άγνωστες κατά το χρόνο μεταγλώττισης (π.χ. οι συμβολοσειρές μορφοποίησης φορτώνονται από αρχεία πόρων). Χρειάζεται λίγος επιπλέον χρόνος εκ των προτέρων για να κάνετε πράγματα όπως η ανάλυση συμβολοσειρών, αλλά αυτό εξοικονομεί εργασία που γίνεται κάθε φορά που το χρησιμοποιείτε.

4.System.Buffers.IndexOfAnyValues

Ο τύπος προορίζεται να περάσει στη μέθοδο εύρεσης της πρώτης αντιστοίχισης οποιασδήποτε τιμής στη συλλογή που πέρασε. Για παράδειγμα, το String.IndexOfAny(Char[]) αναζητά την πρώτη αντιστοίχιση οποιουδήποτε χαρακτήρα στον καθορισμένο πίνακα στη συμβολοσειρά που τον καλεί. Το NET 8 προσθέτει νέες υπερφορτώσεις μεθόδων, όπως String.IndexOfAny και MemoryExtensions.IndexOfAny που δέχονται παρουσίες νέου τύπου. Όταν δημιουργείτε μια παρουσία του System.Buffers.IndexOfAnyValues, όλα τα δεδομένα που απαιτούνται για τη βελτιστοποίηση των επόμενων αναζητήσεων θα προκύψουν εκείνη τη στιγμή, πράγμα που σημαίνει ότι η εργασία γίνεται εκ των προτέρων.

5.System.Text.CompositeFormat

Οι τύποι μπορούν να χρησιμοποιηθούν για τη βελτιστοποίηση συμβολοσειρών μορφοποίησης που είναι άγνωστες κατά το χρόνο μεταγλώττισης (π.χ. οι συμβολοσειρές μορφοποίησης φορτώνονται από αρχεία πόρων). Χρειάζεται λίγος επιπλέον χρόνος εκ των προτέρων για να κάνετε πράγματα όπως η ανάλυση συμβολοσειρών, αλλά αυτό εξοικονομεί εργασία που γίνεται κάθε φορά που το χρησιμοποιείτε.

6. System.Numerics και System.Runtime.Intrinsics

Βελτιώσεις στους χώρους ονομάτων System.Numerics και System.Runtime.Intrinsics. Τα Vector256, Matrix3x2 και Matrix4x4 βελτιώνουν την επιτάχυνση υλικού στο .NET 8. Για παράδειγμα, το Vector256 έχει υλοποιήσει εκ νέου το 2xVector128 όπου είναι δυνατόν. Τα εσωτερικά στοιχεία υλικού τώρα σχολιάζουν χρησιμοποιώντας την ιδιότητα ConstExpected. Αυτό διασφαλίζει ότι οι χρήστες γνωρίζουν πότε το υποκείμενο υλικό χρειάζεται σταθερές και πότε οι εξαιρετικές τιμές μπορεί να βλάψουν κατά λάθος την απόδοση.

Αναφορά:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Αρχικός:Η σύνδεση με υπερσύνδεσμο είναι ορατή.





Προηγούμενος:Το VSTO (VI) ακυρώνει ή αποκλείει την αποθήκευση του εγγράφου του Word
Επόμενος:ASP.NET Core (18) Προσαρμόστε μια απλή κρυφή μνήμη εξόδου OutputCache
Δημοσιεύτηκε στις 7/5/2023 3:36:17 μ.μ. |
Μαθαίνω να μαθαίνω
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com