Σπίτι Ανάπτυξη Τι είναι πτητικό; - ορισμός από την τεχνολογία

Τι είναι πτητικό; - ορισμός από την τεχνολογία

Πίνακας περιεχομένων:

Anonim

Ορισμός - Τι σημαίνει Πτητική;

Το Volatile είναι μια λέξη-κλειδί μέσα στη γλώσσα προγραμματισμού java που καθορίζει ότι μια μεταβλητή μέλους που συσχετίζεται με μια κλάση μπορεί να τροποποιηθεί ασύγχρονα από πολλαπλά νήματα. Η πτητική λέξη-κλειδί στον κώδικα λειτουργεί ως τροποποιητής όταν δηλώνεται ένα μέλος. Οι λέξεις-κλειδιά είναι θεμελιωδώς αποκλεισμένες λέξεις με ξεχωριστή έννοια στο πλαίσιο ενός μεταγλωττιστή.

Η πτητική λέξη χρησιμοποιείται όταν η μεταβλητή δηλώνει κάποιο είδος μεταβλητής που εξαρτάται από το περιβάλλον ή το σύστημα, όπως οι απλοί μετρητές και τα ρολόγια.

Η Techopedia εξηγεί το Volatile

Η πτητική λέξη-κλειδί διασφαλίζει ότι κάθε πρόσβαση ανάγνωσης σε μια μεταβλητή μέλους επιστρέφει την πιο πρόσφατη τιμή της. Αυτό δεν είναι αποτελεσματικό όταν οι πρόσφατες αλλαγές γίνονται με διαφορετικό νήμα. Εάν μια μεταβλητή μέλους δεν δηλωθεί ως πτητική, ένα νήμα δεν θα είναι σε θέση να αναγνωρίσει τις τροποποιήσεις που έγιναν σε αυτήν χρησιμοποιώντας ένα διαφορετικό νήμα.

Για ένα διπλό ή μεγάλο μέλος, η πτητική λέξη-κλειδί διασφαλίζει επίσης ότι η εικονική μηχανή δεν θα δημιουργήσει δύο διαδοχικές εγγραφές 32-bit, αλλά θα δημιουργήσει μόνο μία εγγραφή 64-bit. Εάν αυτό δεν είναι εφικτό, η εφαρμογή JVM συνεχίζει να διασφαλίζει την ατομικότητα αυτής της λειτουργίας, ώστε το παλαιό κατώτερο μισό να μην διαβάζεται με το νέο υψηλότερο ήμισυ κάποιων πτητικών διπλών ή μακρών.

Το Volatile γράφει και διαβάζει δημιουργεί μια σχέση συμβαίνει-πριν. Πριν αποκτήσετε πρόσβαση σε ένα πτητικό αντικείμενο, συμβαίνει συγχρονισμός μεταξύ της κύριας μνήμης και των αποθηκευμένων μεταβλητών, ακριβώς όπως συμβαίνει πριν από την είσοδο ή μετά την έξοδο από ένα συγχρονισμένο μπλοκ. Αυτό σημαίνει ότι ένα πτητικό αντικείμενο μπορεί να δημοσιεύεται με ασφάλεια χωρίς συγχρονισμό. δηλαδή όταν ένα πτητικό αντικείμενο αποκτά πρόσβαση από ένα νήμα, ενημερώνονται επίσης τα μέλη αυτού του αντικειμένου.

Όταν μια μεταβλητή περιγράφεται ως μεταβλητή, ο μεταγλωττιστής JVM και Java εκτελεί τα ακόλουθα δύο πράγματα.

  1. Ο μεταγλωττιστής αποτυγχάνει να μεγιστοποιήσει τις δηλώσεις και τις εκφράσεις που σχετίζονται με αυτή τη μεταβλητή.
  2. Η JVM συγχρονίζει τη μεταβλητή.

Τα πλεονεκτήματα των πτητικών είναι τα εξής:

  • Είναι ελαφρύ
  • Προκαλεί πολύ μικρή επιβάρυνση για να διαβάζει και να γράφει, αλλά είναι ακόμα ταχύτερη από το κλείδωμα.
  • Το πτητικό είναι ανθεκτικό στις νεκρές κλειδαριές.
Τι είναι πτητικό; - ορισμός από την τεχνολογία