Quais os prós e contras de se usar recursividade em metodos serializados (synchronized)?
Alguém já se deparou com este dilema?
Quais os prós e contras de se usar recursividade em metodos serializados (synchronized)?
Alguém já se deparou com este dilema?
[quote=leonardocfmg]Quais os prós e contras de se usar recursividade em metodos serializados (synchronized)?
Alguém já se deparou com este dilema?[/quote]
Não, porque vc pode fazer o método sincronized chamar outro método normal e esse outro método que é recursivo.
Ou melhor ainda, vc não usa recursão ( usa um laço)
Sem ver o codigo que vc está falando fica dificil, mas em geral é isso ai que eu disse.
Até onde sei, a vantagem continua a mesma: você garante que só uma thread vai chamar aquele método.
Quanto às desvantagens, você só terá problemas se sua recursão for muito profunda (mais de 2 milhões de níveis de recursão). Tirando isso, não sei de nenhum outro problema.
Há um impacto no desempenho do seu método, também, mas se ele tiver que ser usado num ambiente com várias threads e você precisar garantir que só uma thread vai chamá-lo por vez, o synchronized é a solução mais simples.