Ciao a tutti, sapete se è possibile creare variabili di tipo volatile in B4A? (accessibili e modificabili da più task o servizi)
Thread, classi e moduli della stessa App o di app diverse?da più thread, classi, moduli etc....
Infatti, non Immaginavo che fosse riferito a una cosa così semplice, e mi chiedevo cosa intendesseEsempio di variabili volatili:
Dim Fringuello as
Dim Corvo as
Dim Piatto as (chi è sposato può capire..eehehhe).
A parte gli scherzi, credo che intenda le variabili definite in Process_Globals
Cmq ci sono dei trucchi per crearlo, ma potresti usarlo solo dalle tue App perché conosci il metodo.Ma ti riferisci al linguaggio C?
"
Il modificatore volatile viene utilizzato per indicare al compilatore che il valore di una variabile può essere modificato in modo non esplicitamente specificato dal programma.
Ad esempio l'indirizzo di una variabile globale può essere passata alla routine dell'orologio di sistema, per usare tale variabile per conservare l'ora. In tale situazione il contenuto della variabile verrà modificato senza che il programma faccia un assegnamento.
"
Allora aveva inteso bene @Star-Dust quando diceva che volevi che la variabile fosse disponibile ad altri programmi/processi. In tal caso non credo sia possibile in Android (anche perché passando da un processo ad un altro, il primo potrebbe essere terminato dal sistema operativo)
ps: Fringuello era per ridere..
Puoi chiamarla variabile globale e metterla in qualunque modulo di codice dichiarandola appunto Public.Ragazzi grazie per la vostra disponibilità, l'utilizzo che ne devo fare è a livello della mia app, quindi la variabile deve essere aggiornata da più servizi attivi interni all'app. Volevo soltanto accertarmi se era possibile o meno scongiurare errori che normalmente si verificano in casi del genere, mediante appunto l'utilizzo di una volatile. Forse poi è un problema che magari non si verifica nemmeno, ma per sicurezza ho chiesto...
Essendoci un solo thread non può esserci conflitto.Ti ringrazio, questo già lo sapevo, vorrei soltanto essere certo che nel caso due moduli o servizi vanno a modificare nello stesso istante il valore di quella variabile non ci sono problemi, quindi che sarà il sistema a impostare le priorità in questo senso.