java:thread_signalling

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
java:thread_signalling [2015/04/19 14:57]
gthanos [Συγχρονισμός με χρήση wait(), notify(), notifyAll()]
java:thread_signalling [2015/04/19 15:04]
gthanos [Συγχρονισμός μέσω διαμοιραζόμενων αντικειμένων και διαρκούς επανάληψης]
Line 61: Line 61:
 } }
 </​code>​ </​code>​
-Στο παράδειγμα αυτό το νήμα περιμένει,​ αλλά παράλληλα παραμένει και ενεργό (busy). Επίσης,​ θα παρατηρήσετε ότι ​αν τα δύο νήματα δεν καλέσουν την μέθοδο sleep() στην αρχή, τότε με μεγάλη ​πιθανότητα τα δύο νήματα θα εκκινήσουν ταυτόχρονα και ταυτόχρονα διαβάσουν την τιμή **signal.hasDataToProcess() -> -1**  και θα αρχίσουν να τρέχουν παράλληλα πράγμα που δεν το θέλουμε.+Στο παράδειγμα αυτό το νήμα περιμένει,​ αλλά παράλληλα παραμένει και ενεργό (busy). Επίσης,​ θα παρατηρήσετε ότι με σημαντική πιθανότητα ​(αλλά όχι σίγουρα) ​τα δύο νήματα θα εκκινήσουν ταυτόχρονα και ταυτόχρονα διαβάσουν την τιμή **signal.hasDataToProcess() -> -1**  και θα αρχίσουν να εκτελούνται ​παράλληλα πράγμα που δεν το θέλουμε.
  
 ===== Συγχρονισμός με χρήση wait(), notify(), notifyAll() ===== ===== Συγχρονισμός με χρήση wait(), notify(), notifyAll() =====
java/thread_signalling.txt · Last modified: 2016/02/26 11:15 (external edit)