java:synchronization

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
java:synchronization [2017/03/19 18:28]
gthanos
java:synchronization [2017/03/19 18:33]
gthanos [Παράδειγμα ασάφειας στις τιμές διαμοιραζόμενων μεταβλητών παράλληλα εκτελούμενων νημάτων]
Line 39: Line 39:
   - το νήμα B αποθηκεύει την τιμή της c   - το νήμα B αποθηκεύει την τιμή της c
  
-Μετά από το παραπάνω σενάριο η τιμή της c θα έπρεπε να παραμένει και πάλι μηδέν καθώς το ένα νήμα την αύξησε και το άλλο την μείωσε. Αντί για αυτό η τιμή της c είναι -1 καθώς η μεταβολή από το νήμα Α στην πράξη δεν έγινε. Για να ήταν μεταβληθεί σωστά η τιμή της c η παραπάνω ακολουθία θα έπρεπε να είναι η εξής+Μετά από το παραπάνω σενάριο η τιμή της c θα έπρεπε να παραμένει και πάλι μηδέν καθώς το ένα νήμα την αύξησε και το άλλο την μείωσε. Αντί για αυτό η τιμή της c είναι -1 καθώς η μεταβολή από το νήμα Α στην πράξη δεν έγινε. Για να μεταβληθεί σωστά η τιμή της c η παραπάνω ακολουθία θα έπρεπε να είναι η εξής
   - το νήμα Α λαμβάνει την τιμή της c   - το νήμα Α λαμβάνει την τιμή της c
   - το νήμα Α αυξάνει την τιμή της c κατά 1   - το νήμα Α αυξάνει την τιμή της c κατά 1
java/synchronization.txt · Last modified: 2018/03/08 09:26 by gthanos