renho que fazer um gerendiador de downloads com trheads quero criar um arry das threads para startar todas ao mesmo tempo de um metodo só que ele só estar a ultima instancia da thred que eu criei tenho ceeteza qieue o meu arraylist de threads ta certo porque ele só estarta a ultima
codigo
processa as trheads
public void cadastra(){
try {
String url =JOptionPane.showInputDialog(null,"endereço da internet");
String Temp=JOptionPane.showInputDialog(null,"tempo da atualização");
String salvarOnde=JOptionPane.showInputDialog(null,"Local pra salvar na makina ");
int tempo = Integer.parseInt(Temp);
Temporizador t = new Temporizador(url,salvarOnde,tempo);
ArrayList<Temporizador> ArrayThreads = new ArrayList<Temporizador>();
ArrayThreads.add(t);
String cadastramais=JOptionPane.showInputDialog(null,"Criar mais ");
if(cadastramais.equals("1")){
cadastra();
}
else{
rodar(ArrayThreads);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void rodar(ArrayList<Temporizador> ArrayThreads){
Iterator it = ArrayThreads.iterator(); //Cria um iterator apartir da lista de itens
while (it.hasNext()) { //Varre a lista
Temporizador download=(Temporizador)it.next(); //pega o elemento da lista
download.run();
System.out.println(download.link);
}
}
classe que extende thread
public Temporizador(String link ,String onde ,int tempo) throws IOException{
this.link=link;
this.onde=onde;
this.tempo=tempo;
}
public void run() {
try {
for(;;){
ManipulaUrl download = new ManipulaUrl(link,onde);
this.sleep(tempo);
}
} catch (Exception e) {
// TODO: handle exception
}
}