
- Η Google εισάγει ένα νέο σύστημα στο Android 17 για να μειώσει τον χρόνο που περνούν τα νήματα λογισμικού περιμένοντας το ένα να ολοκληρωθεί το άλλο.
- Αναθεωρώντας τον τρόπο με τον οποίο η πρόσβαση στη μνήμη κλειδώνεται προσωρινά, το DeliQueue επιτρέπει στα νήματα να εκτελούνται με λιγότερες διακοπές.
- Αυτό θα μπορούσε να οδηγήσει σε μείωση κατά 4% των εφαρμογών που χάνουν καρέ ή έως και 7,7% σε όλο το περιβάλλον χρήστη του συστήματος Android.
Περνώντας τα χρόνια μιας συσκευής, πιθανότατα παρατηρείτε ότι κάτι δεν πάει καλά όπως πριν και δεν λειτουργεί τόσο ομαλά όσο θα μπορούσε. Όλα εξακολουθούν να γίνονται – κάνετε σάρωση, πλοήγηση στο περιβάλλον χρήστη του συστήματος, μπαίνετε και βγαίνετε από εφαρμογές – αλλά μερικές φορές μπορεί να γίνουν λάθη και να μην αποκριθεί άμεσα η συσκευή στις κινήσεις σας, κάτι που μπορεί να σημαίνει απώλεια καρέ. Μπορεί να το δείτε ως τρεμόπαιγμα ή κύλιση που δεν είναι τόσο ομαλή όσο άλλες φορές. Για τις Android συσκευές, με το Android 17 , η Google εισάγει ορισμένες αλλαγές, MessageQueue , που θα μπορούσαν να κάνουν αυτό το φαινόμενο να μειωθεί κατά πολύ.
- Στο Android Developer Blog της, η Google μοιράζεται μια μάλλον τεχνική ανάλυση των αλλαγών που έρχονται στο MessageQueue στο Android 17. Τι είδους βελτιώσεις θα δείτε στην πραγματικότητα; Στις δοκιμές της, η Google αναφέρει μείωση 4% στα χαμένα καρέ στις εφαρμογές και μείωση 7,7% στα χαμένα καρέ στο σύστημα και στο περιβάλλον χρήστη εκκίνησης. Αυτό δεν είναι τεράστιο, ομολογουμένως, αλλά εξακολουθεί να αποτελεί πρόοδο προς τη σωστή κατεύθυνση. Μπορούμε επίσης να περιμένουμε την εκκίνηση των εφαρμογών λίγο πιο γρήγορα.
Το πρόβλημα είναι ότι μέχρι στιγμής τα threads λογισμικού έχουν καταφέρει να κλειδώσουν προσωρινά την ουρά καθώς συνεργάζονται με αυτήν, και αυτό μπορεί να οδηγήσει σε καταστάσεις όπου ένα thread πρέπει να περιμένει περισσότερο από όσο θα έπρεπε για να απελευθερώσει το κλείδωμα ένα άλλο. Εάν αυτό διαρκέσει πολύ, σημαντικές διεργασίες δεν ολοκληρώνονται εγκαίρως, με αποτέλεσμα συνέπειες για τον χρήστη, όπως απώλεια καρέ.