CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: complicazio con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 11 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 2 su 2
Discussione:

Aggiornare una variabile da due AsyncTask

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Apr 2013
    Messaggi
    10
    Smartphone
    Nokia Lumia 1020

    Ringraziamenti
    3
    Ringraziato 0 volte in 0 Posts
    Post

    Aggiornare una variabile da due AsyncTask

    Ciao a tutti, supponiamo di avere il seguente problema:
    In una Activity sono presenti due AsyncTask, ognuno prende in ingresso dei valori stringa e, eseguendo onProgressUpdate, "buttano fuori" continuamente dei valori interi:

    AsyncTask1 OUT: x1,y1
    AyncTask2 OUT: x2,y2

    Supponiamo ora che, ogni volta che abbiamo dei nuovi dati in uscita dai due AsyncTask, si voglia collocarli all'interno di un Array, creando un vettore fatto in questo modo [x1,y1,x2,y2]. Questo array verrà utilizzato successivamente per ulteriori elaborazioni.
    E' chiaro che il problema risiede nel fatto di aggiornare contemporaneamente il solito array.
    Se introduciamo una variabile temporale "t", ci si aspetta di ottenere un Array fatto in questo modo:
    [x1(t),y1(t),x2(t),y2(t)]
    [x1(t+1),y1(t+1),x2(t+1),y2(t+1)]
    ...
    [x1(t+n),y1(t+n),x2(t+n),y2(t+n)]

    Come posso quindi gestire l'aggiornamento simultaneo di una stessa variabile da parte di due AsyncTask rispettando il vincolo temporale appena descritto?
    Grazie a tutti.

  2.  
  3. #2
    Baby Droid


    Registrato dal
    Jan 2015
    Messaggi
    18

    Ringraziamenti
    3
    Ringraziato 0 volte in 0 Posts
    Predefinito

    prova a vedere qua Lock | Android Developers ,
    o meglio java.util.concurrent | Android Developers

    forse,ma ripeto forse,potresti creare due array di oggetti differenti con due valori per ogni singolo oggetto: il valore int che buttano fuori ed il valore timestamp della creazione alla fine dell'esecuzione od ogni n secondi puoi ordinare i due array di oggetti usando il valore time che rappresenta il momento della creazione,magari lavorando su delle copie degli array, non ho capito se il tuo programma all'infinito produce interi oppure ha dei momenti di pause,
    comunque meglio che guardi la doc linkata all'inizio di questa mia risposta

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy