Dúvida com thread

Olá pessoal,

Tô querendo saber se tem como eu associar uma thread a um método.
Exemplo:

Uma classe que no método main() dispare duas threads e na sequência execute um for(…), só que essas duas threads utilizam variáveis globais que o main() também usa. queria saber se tem como eu disparar essas threads cada uma iniciando um certo método que está na mesma classe do main()

Valeu!!!

[quote=romuloaugusto]Olá pessoal,

Tô querendo saber se tem como eu associar uma thread a um método.
Exemplo:

Uma classe que no método main() dispare duas threads e na sequência execute um for(…), só que essas duas threads utilizam variáveis globais que o main() também usa. queria saber se tem como eu disparar essas threads cada uma iniciando um certo método que está na mesma classe do main()

Valeu!!![/quote]

kra, vc ta com a mesma duvida q eu tava a algumas horas atraz :stuck_out_tongue:

bom, eu n sei c tem um metodo “pratico” para isso, oq eu fiz pra conseguir resolver foi criando classes internas q extendam threads, assim vc cria elas, e manda executar, exemplo:

public class MinhaClasse {
  private String mensagem = "olaa";
  private int loopqtd = 1000;

  public iniciar() {
    class MinhaSubClasse extends Thread {
      public void run() {
        for(int i = 0; i < loopqtd, i++) {
          System.out.println(i + " " + mensagem);
        }
      }
    }

    new MinhaSubClasse().start();
  }

  public static void main(String[] args) {
    new MinhaClasse().iniciar();
  }
}

escrevi o codigo agora, entao n testei, mas a logika eh essa ai :wink:

Valeu pela ajuda… acho que isso resolve meu problema!!!

Cara, eu implementei uma classe mas ta dando um erro…
Vou deixar o arquivo aqui, se tu conseguir dá um jeito eu agradeço

Só pra ajudar:

Em algoritmo existe uma chamada down(nome_semaforo) que realiza a exclusão mútua do threads. Esse semaforo é um inteiro que não pode ser negativo. A cada chamada down() ele é decrementado até bloquear a thread.
No código que eu mandei existe um for() no construtor da classe principal, e dentro tem um bloco synchronized que toma posse do semáforo “sem”. Só que na segunda vez do loop é pra essa thread bloquear pq esse “sem” ficaria negativo. Mas em java não sei como faz isso!

Valeu!