Comportamento do método estático no ambiente multi-threaded em java

Há uma pergunta estúpida simples que me incomoda e faz vários argumentos em minha mente. Eu quero jogar fora todas as dúvidas sobre as questões abaixo.

class Clstest{

    public static String testStaticMethod(String inFileStr) {

        // section 0

        // section 1

        // do something with inFileStr

        // section 2

        // section 3

        return inFileStr;

    }

}

Vamos supor que há cinco segmentos cada um executando uma chamada paraClstest.testStaticMethod("arg-n") ao mesmo tempo.

Chamadas de thread 1Clstest.testStaticMethod("arg-1").

Quando o segmento 1 está na seção 1, as chamadas de thread 2Clstest.testStaticMethod("arg-2").

Então, o que acontecerá com o Thread 1? Irá dormir no estado?

Quando o Tópico 1 tiver a chance, ele retomará a execução da seção 1, onde foi pausado?

Como isso acontece quando há umClstest.testStaticMethod e mesmoClstest.testStaticMethod é compartilhado entre todos os cinco segmentos?

Existe alguma possibilidade de trocar oinFileStr enviado por vários segmentos?

questionAnswers(2)

yourAnswerToTheQuestion