Visualizzazione stampabile
-
Scambio dati tra threads
Ciao a tutti,
innanzitutto chiedo scusa se esiste un altro post con la stessa domanda ma ricercadolo nel forum non l'ho trovato.
La mia applicazione ha 2 threads lanciati da 2 classi (chiamiamoli 1 e 2) che interagiscono sulla stessa variabile definita in un'altra classe (3): un thread (classe 1) scrive e l'altro legge (classe 2). La classe3 è utilizzata come struct in modo da raccogliere delle variabili in modo ordinato. Il mio problema è che il thread che scrive (classe 1) su queste variabili le aggiorna correttamente (da debug si vede che i valori vengono modificati) ma quando l'altro thread (quello che legge, classe 2) le va a ripescare, i relativi valori sono quelli iniziali definiti nella inizializzazione della classe 3.
Facile che la soluzione sia molto semplice ma non la trovo.
Grazie a tutti,
Spadoman
-
La classe dove inserisci e leggi i dati ha un istanza statica o le variabili sono statiche ?
-
Ciao,
la classe è dichiarata dentro pippo.java e le variabili sono dichiarate 'volatile':
Per accedere alle variabili dalle altre classi inizializzo nelle altre classi una istanza del tipo:
pippo pippo_istanza = new pippo();
e poi semplicemente:
pippo_istanza.paperino = 10;
per accedere alla variabile paperino e metterci dentro 10.
Il problema è che il 10 lo mette, ma quando poi accedo con un altra classe, la variabile paperino non è più 10 ma ha il valore iniziale dichiarato dentro a pippo.java.
Grazie di nuovo
Spadoman