Prezados senhores,
 
Imaginem a seguinte classe:
 
public class MinhaClasse {
  public void metodo() {
    int a, b, c;
    // algum processamento demorado utilizando
    // as vari�veis autom�ticas "a", "b" e "c"
  }
}
 
Na m�quina virtual h� apenas um objeto desta classe, denominado "meuObjeto".
 
Imaginem tamb�m que na m�quina virtual h� mais tr�s threads em execu��o. Em cada uma destas threads h� uma refer�ncia a "meuObjeto" -- logo, h� um problema de acesso concorrente ao m�todo "metodo()". Como voc�s podem observar, este n�o � um m�todo "synchronized", e portanto poder� haver acesso simult�neo por meio das tr�s threads.
 
A pergunta �: quando as threads est�o executando o m�todo "metodo()", elas obter�o os mesmos valores para as vari�veis "a", "b" e "c" ou para cada cliente haver� um conjunto de valores diferente (ou seja, �reas de mem�ria diferentes, sendo empilhadas e desempilhadas de acordo com a necessidade)?
 
A resposta deve ser embasada em alguma boa refer�ncia (especifica��o da Sun, livros conhecidos), e n�o em achismos ou livros de m� qualidade.
 
(Quem responder primeiro ganha uma caixa de Bis! ;-D)
 
Augusto Jun Devegili
Software Architect @ NeoGrid S.A.
Phone: +55 (47) 422-7099
Sun Certified Architect for Java Technology 1.2
Sun Certified Developer for the Java Platform 1.1
Microsoft Certified Professional
 

Responder a