Salve a tutti,
ho una domanda sui thread non facile da spiegare ma ci provo.
L'applicazione prevede un server multithreading che ad ogni richiesta del client fa partire un thread che deve cercare dei file contenuti in alcune cartelle e spedirli al client.
Ho creato un metodo static che fa questa ricerca e restuisce un arraylist cntenente questi file.
Se faccio in modo che il metodo run() del thread richiama questo metodo che succede?
Mi spiego meglio...parte il thread 1 questo fa partire il metodo static che istanzia un arrayList, lo riempe con i file di interesse e lo restituisce tramite un return.
Supponiamo che quando il thread uno è a metà esecuzione parte il thread 2 che richiama sempre questo metodo static.
il thread 2 usa la stessa arraylist del primo oppure no? Dato che quest'array è creato all'interno del metodo static richiamato da entrambi?
Perchè potrebbe capitare che l'arraylist è riempita in parte dal primo thread ed in parte dal secondo!