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

Πώς επικοινωνούν τα νήματα μεταξύ τους;
Πώς επικοινωνούν τα νήματα μεταξύ τους;

Βίντεο: Πώς επικοινωνούν τα νήματα μεταξύ τους;

Βίντεο: Πώς επικοινωνούν τα νήματα μεταξύ τους;
Βίντεο: Πώς μπορώ να επικοινωνήσω με τις ψυχές των νεκρών; 2024, Απρίλιος
Anonim

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

Οι άνθρωποι ρωτούν επίσης, πώς επικοινωνείτε μεταξύ δύο νημάτων;

Κατανόηση της διαδικασίας επικοινωνίας μεταξύ νημάτων

  1. Τα νήματα μπαίνουν για να αποκτήσουν κλειδαριά.
  2. Το κλείδωμα αποκτάται από το νήμα.
  3. Τώρα το νήμα πηγαίνει σε κατάσταση αναμονής εάν καλέσετε τη μέθοδο wait() στο αντικείμενο.
  4. Εάν καλέσετε τη μέθοδο notify() ή notifyAll(), το νήμα μετακινείται στην κατάσταση ειδοποίησης (κατάσταση δυνατότητας εκτέλεσης).

Δεύτερον, τι είναι η μέθοδος αναμονής στο νήμα; Με απλά λόγια, Περίμενε () είναι ένα παράδειγμα μέθοδος που χρησιμοποιείται για Νήμα συγχρονισμός. Μπορεί να κληθεί σε οποιοδήποτε αντικείμενο, όπως ορίζεται απευθείας στη java. lang. Αντικείμενο, αλλά μπορεί να κληθεί μόνο από συγχρονισμένο μπλοκ. Απελευθερώνει την κλειδαριά στο αντικείμενο έτσι ώστε ένα άλλο Νήμα μπορεί να πηδήξει και να αποκτήσει μια κλειδαριά.

Επιπλέον, πώς επιτυγχάνετε την επικοινωνία μεταξύ των νημάτων;

Επικοινωνία μεταξύ νημάτων σε Java

  1. Wait()-Λέει στο νήμα που καλεί να εγκαταλείψει το κλείδωμα και να κοιμηθεί μέχρι να εισέλθει κάποιο άλλο νήμα στην ίδια οθόνη και να καλέσει το notify().
  2. notify()-Ξυπνά ένα μεμονωμένο νήμα που κάλεσε wait() στο ίδιο αντικείμενο.
  3. notifyAll()-Ξυπνά όλα τα νήματα που καλούν wait() στο ίδιο αντικείμενο.

Πώς χρησιμοποιείτε την αναμονή και την ειδοποίηση σε νήματα Java;

Όταν χρησιμοποιείται το synchronized(this), πρέπει να αποφεύγετε να συγχρονίζετε επικλήσεις μεθόδων άλλων αντικειμένων. Περίμενε () λέει την κλήση Νήμα να παρατήσει την οθόνη και να κοιμηθεί μέχρι κάποια άλλη Νήμα μπαίνει στην ίδια οθόνη και καλεί κοινοποιώ (). κοινοποιώ () ξυπνάει ο πρώτος Νήμα που κάλεσε Περίμενε () στο ίδιο αντικείμενο.

Συνιστάται: