Io ho parlato di "direttamente" (mi scuso se è stato equivocato) ma il termine era riferito non tanto al fatto che il setText fosse materialmente dentro al while nel run ma che il setText fosse eseguito direttamente all'interno del flusso del thread!Originariamente inviato da Gil1688
Ad andbin dico che nel metodo run ridefinito NON ho scritto nulla del tipo
variabile.setText ("blabla");
Il punto è questo e lo ripeto ancora una volta: se nel "flusso" di esecuzione del thread secondario che tu hai creato, fai direttamente nel run o indirettamente in qualunque metodo invocato dal run dei: setText, removeAll, add (es. su contenitori), setLayout, ecc... e qualunque altro metodo tipico della interfaccia utente, questo è, lo ripeto ancora, inappropriato.Originariamente inviato da Gil1688
thread figlio vengono chiamati dei metodi che me la aggiornano (in realtà è uno solamente).
codice:public void run() { while (true) { .... unaLabel.setText(....); // inappropriato unPannello.add(altraLabel); // inappropriato .... pippo(); .... } } private void pippo() { unaLabel.setText(....); // inappropriato (è invocato nel flusso del thread secondario) unPannello.add(altraLabel); // inappropriato (idem) }

Rispondi quotando